Files
CODE_ASSISTANT/2_frontend
lee-hyeon-cheolandClaude Fable 5.1 2e7bae4c06 feat: 스니펫 공용화 — 서버 PostgreSQL 테이블 + API, 프론트는 브릿지 대신 HTTP
결정(9/21): 공용 하나, 개인 로컬 없음.
- backend apps/snippets: Snippet(name PK·desc·body·category) + SnippetUsage(사람별 count/last_used).
  GET/POST /api/v1/snippets, PUT/DELETE /snippets/{name}, POST /snippets/{name}/use — 옛 브릿지 5개와 1:1,
  이름 정규화·중복 409·빈 내용 400 규칙 동일. import_snippets 커맨드로 옛 snippets.db 적재. 테스트 3개
- frontend snippets.api.ts 만 HTTP 로 교체(훅·페이지·타입 무변경). 테스트 axios-mock-adapter 로
- ponytail: Tauri 로컬 SQLite 커맨드는 미사용 상태로 남김. 지울 때 Rust+브릿지 테스트 함께

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-21 16:06:14 +09:00
..
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00
2026-09-16 17:22:14 +09:00

2_frontend — React SPA 템플릿

Vite + React + TypeScript + Tailwind + shadcn/ui + Zustand + TanStack Query 기반. 백엔드(1_backend/, FastAPI + SSE + JWT)와 연동.

시작하기

npm install
cp .env.example .env
npm run dev   # http://localhost:5173

백엔드도 같이 띄울 것: cd ../1_backend && uv run uvicorn main:app --reload --reload-dir src --port 8001 --app-dir src

주요 명령

명령 설명
npm run dev dev 서버 (5173)
npm run build 프로덕션 빌드
npm run lint ESLint
npm run test Vitest 단위 테스트
npm run format Prettier 포맷

자세한 설계: ../docs/superpowers/specs/2026-05-05-frontend-template-design.md

검증 완료 (2026-05-05)

  • 부트스트랩 (Vite + TS + Tailwind + ESLint + Prettier 설정)
  • core lib (tokenStore, api client + 401 refresh, SSE wrapper, queryClient, cn)
  • shared (shadcn/ui core, Layout, ProtectedRoute, ErrorBoundary)
  • features/auth (schemas, store, api, hooks, components, pages)
  • features/users (api, hooks, MePage)
  • features/chat (store, SSE wrapper, hook, components, ChatPage)
  • routing + Provider 와이어업

테스트 34개 통과, lint 깨끗, build 성공.

수동 시나리오 검증 (백엔드 8001 + 프론트 5173 같이 띄우고):

  1. / → ProtectedRoute가 /login 으로 redirect
  2. happy@pwc.com / a1234 로그인 → /chat 이동
  3. 헤더에 이메일 보임
  4. /me 클릭 → 내 정보 표시
  5. /chat 메시지 보내면 SSE echo로 토큰 단위 누적
  6. Logout → /login 이동