Skip to content

Latest commit

 

History

History
116 lines (79 loc) · 3.12 KB

File metadata and controls

116 lines (79 loc) · 3.12 KB

Repository Guideline

프로젝트 개요

이 프로젝트는 구독 공유 통합 관리 서비스 엔빵의 프론트엔드 저장소입니다.

  • Framework: Next.js (App Router)
  • Language: TypeScript (Strict Mode)
  • Backend: Supabase
  • State Management: Zustand
  • Styling: Tailwind CSS

개발 원칙

AI는 아래 원칙을 항상 우선적으로 따릅니다.

  • 기존 기능이 정상 동작하는 것을 최우선으로 합니다.
  • 필요한 범위만 최소한으로 수정합니다.
  • 큰 변경보다 작은 변경을 선호합니다.
  • 추측하여 구현하지 않습니다.
  • 기존 코드 스타일과 프로젝트 구조를 최대한 유지합니다.

작업 방식

모든 개발 작업은 아래 순서를 따릅니다.

구현 설계서
    ↓
GitHub Issue
    ↓
구현
    ↓
Pull Request
    ↓
Code Review
  • 구현 전에 작업 목적과 범위를 먼저 이해합니다.
  • 하나의 Issue는 가능한 하나의 PR로 구현합니다.
  • PR이 너무 커질 경우 Task 단위로 작업을 다시 분리합니다.
  • 구현보다 작업 분해와 영향 범위를 먼저 검토합니다.

코드 작성 규칙

  • TypeScript Strict Mode를 유지합니다.
  • any 사용은 지양합니다.
  • 기존 프로젝트의 코드 스타일을 따릅니다.
  • 새로운 구조를 만들기보다 기존 패턴을 우선 재사용합니다.
  • UI 컴포넌트에서 비즈니스 로직을 직접 구현하지 않습니다.
  • 기존 Helper 또는 Lib가 있다면 우선 활용합니다.

테스트

작업 완료 후 아래 내용을 확인합니다.

  • npm run lint
  • npm run build

Playwright 테스트가 존재하는 경우 영향을 받은 기능을 함께 검증합니다.


Review Guidelines

리뷰의 목적은 코드 스타일을 지적하는 것이 아니라, 변경 사항의 위험 요소와 의사결정을 검증하는 것입니다.

리뷰 시 아래 순서를 우선합니다.

  1. Why

    • 이 작업을 왜 해야 하는가?
    • 지금 해결해야 하는 이유가 충분한가?
  2. Decision

    • 구현 방식이 문제를 해결하는 데 적절한가?
    • 더 단순하거나 안전한 대안은 없는가?
  3. Impact

    • 기존 기능에 영향을 주지 않는가?
    • 회귀(Regression), 데이터 정합성, 성능 저하 가능성은 없는가?
  4. Review Points

    • 작성자가 지정한 위험 영역을 우선 검토한다.

코드 스타일보다 기능 안정성과 사용자 영향도를 우선하며, P0/P1 수준의 문제에 집중합니다.


보안

  • Secret 또는 .env 파일은 절대 커밋하지 않습니다.
  • Supabase Schema 변경 시 Type을 최신 상태로 유지합니다.
  • RLS 관련 변경은 특히 신중하게 검토합니다.
  • 운영 환경에서만 사용하는 설정은 유지합니다.

AI 작업 원칙

작업 시 다음 내용을 항상 명확히 설명합니다.

  • 왜 이 작업이 필요한가
  • 어떤 방식을 선택했는가
  • 어떤 대안을 검토했는가
  • 어떤 영향 범위를 가지는가
  • 어떤 리스크가 존재하는가

불필요한 리팩토링이나 구조 변경은 제안하지 않습니다.