forked from baron/baron-sso
- FE: Vitest 환경 구축 및 공통 UI 컴포넌트(Badge, Button) 테스트 추가 - FE: Playwright E2E 테스트(Auth, Tenant CRUD 및 Validation) 시나리오 보강 - BE: Testcontainers 기반 Repository 통합 테스트(PostgreSQL) 추가 - BE: TenantRepository 계층 구조(Hierarchy), DB 제약조건(Unique) 테스트 - BE: UserRepository 통합 테스트(CRUD, Delete) 추가 - BE: PasswordPolicy 유틸리티 테스트 보강 - BE: TenantService 엣지 케이스(중복 슬러그, 권한 등) 검증 로직 추가 - Fix: 하위 테넌트 생성 시 ParentID 누락 문제 해결
Admin Front (React 19 + Vite)
관리자 포털을 위한 React/Vite 기반 웹입니다. 이슈 #60 스펙을 바탕으로 라우팅, 서버 상태, 스타일 토큰을 세팅했고 특정 벤더에 종속되지 않는 IDP 연동 훅 포인트를 남겨두었습니다.
주요 스택
- React 19, Vite 7, TypeScript(strict)
- React Router v6 (data router)
- TanStack Query v5
- Tailwind CSS v3 + shadcn/ui 컴포넌트(seed: Button/Card/Badge/Input/Table/Avatar)
- Axios 클라이언트 스텁: Bearer +
X-Tenant-ID헤더 주입 준비 - React Hook Form + Zod (추가 예정)
- Biome (formatter/linter)
실행
npm install
npm run dev
구조
src/app: 라우터, QueryClient 등 전역 설정src/components/layout: App 레이아웃/네비게이션src/features: dashboard, clients, audit, auth 등 화면 스캐폴딩src/lib/apiClient.ts: Axios 인스턴스(토큰/테넌트 헤더 주입 스텁)
다음 작업 가이드
- IDP 중립 Auth 레이어 추가 후 관리자 역할 가드/세션 TTL 적용
- 테넌트 선택 UI 추가 →
X-Tenant-ID헤더에 반영 - shadcn/ui 도입 및 폼/테이블 컴포넌트 연결