AI 기반 SNS 프로젝트를 단계별로 학습하는 교육용 저장소입니다.
Shamstagram은 사용자의 평범한 일상을 AI가 과장되게 변환하여 재미있는 경험을 제공하는 SNS입니다. 이 교육용 저장소는 전체 프로젝트를 15단계로 나누어 점진적으로 개발하는 과정을 담고 있습니다.
총 15개의 브랜치로 구성되어 있으며, 각 브랜치는 특정 기능 구현에 집중합니다:
- 1_project_setup - 프로젝트 구조 설정
- 2_backend_foundation - Flask 백엔드 기초
- 3_database_models - 데이터베이스 모델
- 4_frontend_foundation - React 프론트엔드 기초
- 5_auth_backend - 백엔드 인증 시스템
- 6_auth_frontend - 프론트엔드 인증 UI
- 7_posts_backend - 게시물 백엔드 API
- 8_posts_frontend - 게시물 프론트엔드 UI
- 9_ai_transformation - AI 텍스트 변환
- 10_bot_personas - 봇 페르소나 시스템
- 11_comments_backend - 댓글 백엔드 API
- 12_comments_frontend - 댓글 프론트엔드 UI
- 13_likes_feature - 좋아요 기능
- 14_invitation_system - 초대 시스템
- 15_docker_deployment - Docker 배포 설정
각 브랜치로 체크아웃하여 단계별 구현 내용을 확인할 수 있습니다:
# 특정 단계로 이동
git checkout 1_project_setup
# 다음 단계로 이동
git checkout 2_backend_foundation- 각 브랜치의 README를 읽고 해당 단계의 목표를 이해합니다.
- 코드와 주석을 통해 구현 방법을 학습합니다.
- 직접 코드를 작성해보며 실습합니다.
- 다음 브랜치와 비교하여 변경사항을 확인합니다.
- Backend: Python, Flask, SQLAlchemy
- Frontend: React, TypeScript, Tailwind CSS
- AI: OpenAI API
- Database: SQLite
- Deployment: Docker, Nginx
교육 목적으로 자유롭게 사용 가능합니다.