Skip to content

About

되고 싶은 사람을 설정하고 매일 그 사람처럼 살아가도록 돕는 자기계발 웹 서비스 (FastAPI · Claude API · Supabase)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Vision & Become

되고 싶은 사람을 설정하고, 매일 그 사람처럼 살아가도록 돕는 자기계발 웹 서비스.


실행 전 준비 (3단계)

1단계. 환경변수 설정

cp .env.example .env

.env 파일을 열고 아래 항목을 채우세요:

항목 어디서 발급
ANTHROPIC_API_KEY https://console.anthropic.com
SUPABASE_URL / SUPABASE_KEY https://supabase.com > 프로젝트 > Settings > API
GOOGLE_CLIENT_ID / SECRET https://console.cloud.google.com > API 및 서비스 > 사용자 인증 정보
SECRET_KEY 아무 랜덤 문자열 32자 이상

Google OAuth 설정 시 리디렉션 URI에 꼭 추가하세요:

http://localhost:8000/auth/callback

2단계. Supabase 테이블 생성

Supabase 대시보드 > SQL Editor > schema.sql 파일 전체 복붙 > Run


3단계. 패키지 설치 및 실행

# 패키지 설치
pip install -r requirements.txt

# 서버 실행
uvicorn main:app --reload --port 8000

브라우저에서 http://localhost:8000 접속


파일 구조

vision_become/
├── main.py                  # FastAPI 앱 진입점
├── config.py                # 환경변수
├── auth.py                  # 세션 + 구글 OAuth
├── database.py              # Supabase 클라이언트
├── claude_api.py            # Claude API (온보딩 + 묘사글 업데이트만)
├── schema.sql               # Supabase 테이블 생성 SQL
├── requirements.txt
├── .env.example
├── routers/
│   ├── auth_router.py       # /auth/login, /auth/callback, /auth/logout
│   ├── onboarding_router.py # /onboarding
│   ├── home_router.py       # /home
│   ├── character_router.py  # /character + API
│   ├── habits_router.py     # /habits + API
│   ├── ifthen_router.py     # /ifthen + API
│   └── journal_router.py    # /journal + API
├── templates/
│   ├── base.html            # 공통 레이아웃 + 하단 탭
│   ├── landing.html
│   ├── onboarding.html
│   ├── home.html
│   ├── character.html
│   ├── habits.html
│   ├── ifthen.html
│   └── journal.html
└── static/
    ├── css/style.css        # 전체 디자인 시스템
    ├── js/app.js            # 공통 유틸
    └── images/uploads/      # 업로드 이미지 저장

Claude API 비용

가입 1회 + 유저가 묘사글 업데이트 버튼 눌렀을 때만 호출. 사실상 거의 0원.


Render 배포 시

  1. GitHub에 푸시
  2. Render > New Web Service > GitHub 연결
  3. Start Command: uvicorn main:app --host 0.0.0.0 --port $PORT
  4. Environment Variables에 .env 내용 그대로 입력
  5. .env의 BASE_URL을 Render 앱 URL로 변경
  6. Google OAuth 리디렉션 URI에 https://your-app.onrender.com/auth/callback 추가

About

되고 싶은 사람을 설정하고 매일 그 사람처럼 살아가도록 돕는 자기계발 웹 서비스 (FastAPI · Claude API · Supabase)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages