인증 (Auth)
카카오 OAuth 기반 로그인 흐름입니다. 프론트 BFF가 access/refresh token을 HttpOnly 쿠키로 브리지합니다.
관련 경로
app/(auth)/login/
app/api/auth/
├── kakao/route.ts ← 로그인 시작 (카카오 URL 리다이렉트)
├── kakao/callback/route.ts ← OAuth 콜백 처리
├── logout/route.ts
├── refresh/route.ts
└── restore/route.ts ← 탈퇴 복구
features/auth/
├── hooks/
├── model/
├── type/
└── ui/
entities/auth/server/
로그인 흐름
1. /login 페이지 → 카카오 로그인 버튼 클릭
2. GET /api/auth/kakao → 카카오 OAuth URL로 리다이렉트
3. 카카오 인증 완료 → GET /api/auth/kakao/callback
4. OAuth state 검증 → code 교환 → 백엔드 토큰 발급
5. access/refresh token → HttpOnly 쿠키 저장
6. 이전 화면으로 복귀 (또는 /home)
토큰 관리
access_token과refresh_token은 모두HttpOnly쿠키- 쿠키 키 이름은
shared/config/authToken.ts상수 사용 - BFF 내부에서 401 응답 시
refreshroute가 자동으로 토큰 갱신
로그인 UI 규칙
- 로그인 카드 전환(카카오 ↔ 이메일)은 같은 카드 안에서 이어지는 느낌
- view state는
default/email명확하게 구분 - 과한 bounce·scale 애니메이션 지양
- 에러 메시지 영역과 input focus 상태를 항상 고려
탈퇴 복구
탈퇴 후 일정 기간 내 재로그인 시 /auth/restore 페이지로 이동합니다.
GET /api/auth/restore— 복구 가능 여부 확인- 복구 거절:
POST /api/auth/restore/decline