113 lines
3.2 KiB
Markdown
113 lines
3.2 KiB
Markdown
# 볼링 매니저 (Bowling Manager)
|
|
|
|
볼링 매니저는 볼링장 운영자와 클럽 관리자를 위한 종합 관리 시스템입니다. 회원 관리, 이벤트 일정 관리, 점수 기록 및 통계, 구독 기반 프리미엄 기능을 제공합니다.
|
|
|
|
## 프로젝트 구조
|
|
|
|
이 프로젝트는 세 가지 주요 구성 요소로 이루어져 있습니다:
|
|
|
|
### 1. 백엔드 (Node.js/Express)
|
|
|
|
`/backend` 디렉토리에 위치한 서버 측 코드입니다.
|
|
|
|
- **기술 스택**: Node.js, Express, Sequelize ORM, MySQL
|
|
- **주요 기능**:
|
|
- RESTful API 제공
|
|
- 데이터베이스 관리
|
|
- 인증 및 권한 관리
|
|
- 구독 및 결제 처리
|
|
- 영수증 검증
|
|
|
|
### 2. 프론트엔드 (Vue.js)
|
|
|
|
`/frontend` 디렉토리에 위치한 웹 클라이언트 코드입니다.
|
|
|
|
- **기술 스택**: Vue 3, Vite, Vuex, Vue Router
|
|
- **주요 기능**:
|
|
- 관리자 대시보드
|
|
- 회원 및 이벤트 관리
|
|
- 통계 및 보고서
|
|
- 구독 관리
|
|
|
|
### 3. 모바일 앱 (Flutter)
|
|
|
|
`/mobile` 디렉토리에 위치한 크로스 플랫폼 모바일 앱 코드입니다.
|
|
|
|
- **기술 스택**: Flutter, Dart, Provider 상태 관리
|
|
- **주요 기능**:
|
|
- 회원 관리
|
|
- 이벤트 및 일정 관리
|
|
- 점수 기록 및 통계
|
|
- 인앱 결제 및 구독
|
|
- 오프라인 지원
|
|
|
|
## 설치 및 실행
|
|
|
|
### 백엔드
|
|
|
|
```bash
|
|
cd backend
|
|
npm install
|
|
npm start
|
|
```
|
|
|
|
### 프론트엔드
|
|
|
|
```bash
|
|
cd frontend
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
### 모바일 앱
|
|
|
|
```bash
|
|
cd mobile
|
|
flutter pub get
|
|
flutter run
|
|
```
|
|
|
|
## 구독 및 인앱 결제 기능
|
|
|
|
볼링 매니저는 다양한 구독 플랜을 제공합니다:
|
|
|
|
- **무료 플랜**: 기본 기능, 제한된 회원 및 이벤트 관리
|
|
- **기본 플랜**: 확장된 회원 및 이벤트 관리, 기본 통계
|
|
- **프리미엄 플랜**: 고급 통계, 커스터마이징 옵션
|
|
- **프로 플랜**: 모든 기능 무제한 이용, 우선 지원
|
|
|
|
구독 관련 문서:
|
|
- [구독 및 인앱 결제 요구사항 및 사용자 플로우](/docs/subscription_requirements_flow.md)
|
|
- [구독 및 인앱 결제 QA 체크리스트](/docs/subscription_qa_checklist.md)
|
|
- [배포 체크리스트](/docs/deployment_checklist.md)
|
|
|
|
## 개발 가이드
|
|
|
|
### 백엔드 API
|
|
|
|
백엔드 API는 RESTful 원칙을 따르며, JWT 기반 인증을 사용합니다. 주요 엔드포인트:
|
|
|
|
- `/api/auth`: 인증 관련 엔드포인트
|
|
- `/api/clubs`: 클럽 관리 엔드포인트
|
|
- `/api/members`: 회원 관리 엔드포인트
|
|
- `/api/events`: 이벤트 관리 엔드포인트
|
|
- `/api/scores`: 점수 관리 엔드포인트
|
|
- `/api/subscriptions`: 구독 관리 엔드포인트
|
|
|
|
### 모바일 앱 구조
|
|
|
|
모바일 앱은 다음과 같은 구조로 구성되어 있습니다:
|
|
|
|
- `lib/models`: 데이터 모델 클래스
|
|
- `lib/services`: API 통신 및 비즈니스 로직
|
|
- `lib/screens`: UI 화면
|
|
- `lib/widgets`: 재사용 가능한 UI 구성 요소
|
|
- `lib/utils`: 유틸리티 함수 및 상수
|
|
|
|
## 라이선스
|
|
|
|
이 프로젝트는 MIT 라이선스 하에 배포됩니다. 자세한 내용은 [LICENSE](LICENSE) 파일을 참조하세요.
|
|
|
|
## 기여
|
|
|
|
버그 신고, 기능 요청 및 풀 리퀘스트는 환영합니다. 기여하기 전에 프로젝트 관리자에게 문의하세요. |