project-rules
모든 코드 변경에 항상 적용되는 프로젝트 규칙. 프로젝트 구조, API 규칙, 컨벤션 준수 필수.
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
UniPlan Project Guide
수강신청 계획 웹 애플리케이션. Spring Boot MSA + Next.js.
프로젝트 구조
app/backend/ # Spring Boot MSA (Java 21)
├── api-gateway/ # :8080 - JWT 인증, 라우팅
├── user-service/ # :8081 - 사용자 인증
├── catalog-service/# :8083 - 강의 검색
└── planner-service/# :8082 - 시간표, 시나리오, 수강신청
app/frontend/ # Next.js (TypeScript)
└── React Query + shadcn/ui + Tailwind
tests/integration/ # pytest Integration 테스트
scripts/ # 크롤러/유틸리티 (Python, uv)
핵심 규칙
API 경로
- 외부:
/api/v1/*→ Gateway가/api/v1제거 후 내부 서비스로 전달 - 예: 클라이언트
/api/v1/timetables/1→ planner-service/timetables/1
API 계약 (중요)
-
요청:
excludedCourseIds(Long 배열) -
응답:
excludedCourses(courseId 포함 객체 배열)
JWT 인증
- 헤더:
Authorization: Bearer {token} - Gateway가 검증 후
X-User-Id,X-User-Email헤더 추가 - 인증 불필요:
/api/v1/auth/**,/api/v1/universities/**
멀티 대학 지원
- 회원가입 시 대학 선택 필수 (
universityId) - 강의 검색 시 대학 + 학기로 필터링
- 프론트엔드 학기 선택은 localStorage에 저장
작업 원칙
- 백엔드 먼저 - Controller/DTO 확인 후 프론트엔드 작업
- 품질 게이트 - 변경 전 테스트 통과 확인
-
보안 -
.env, 비밀번호, JWT 시크릿 커밋 금지 - 문서 동기화 - 코드 변경 시 관련 문서 업데이트
주요 명령어
# 백엔드
cd app/backend && ./gradlew clean build
./gradlew :api-gateway:bootRun
./gradlew :planner-service:bootRun
# 프론트엔드
cd app/frontend && npm install && npm run dev
# Integration 테스트 (테스트용 컨테이너 필수)
docker compose -f docker-compose.test.yml up -d --build
sleep 20
cd tests/integration && uv sync && uv run pytest -v
docker compose -f docker-compose.test.yml down
# Docker (백엔드)
docker compose up --build # 개발용 (API: :8080)
docker compose -f docker-compose.test.yml up # 테스트용 (API: :8080, tmpfs DB)
상세 문서
-
docs/architecture.md- API Gateway, 엔티티 설계 -
docs/features.md- 기능별 사용자 시나리오 -
docs/guides.md- 개발 가이드, 코딩 컨벤션
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-01-20
- 索引更新时间
- 2026-01-26
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!