채크(CHACK) 는 독서 습관 형성을 위한 모바일 애플리케이션입니다. 사용자는 자신의 서재에 도서를 추가하고, 독서 내용을 체계적으로 기록하며, 목표 설정을 통해 독서 활동을 효율적으로 관리할 수 있게 합니다.
목표:
- 독서를 사용자 일상에 스며들게 하여 꾸준한 독서 습관 형성
- 독서를 통해 지식의 확장과 개인의 성장 도모
- 📖 개인 서재 관리
- ⏱️ 독서 타이머
- 📊 독서 통계 및 분석
- 🎯 독서 목표 설정
- 📝 독서 기록 및 메모
- 📍 주변 도서관 찾기
- 📚 도서 추천 시스템
| 카테고리 | 패키지 | 버전 | 설명 |
|---|---|---|---|
| 상태관리 | provider | ^6.1.1 | 상태 관리 패키지 |
| Firebase | firebase_core | ^2.32.0 | Firebase Core 기능 |
| firebase_auth | ^4.15.3 | Firebase 인증 | |
| cloud_firestore | ^4.17.5 | Cloud Firestore | |
| firebase_storage | ^11.2.0 | Firebase Storage | |
| UI/UX | flutter_svg | ^2.0.9 | SVG 렌더링 패키지 |
| percent_indicator | ^4.2.2 | 진행률 표시 위젯 | |
| fl_chart | ^0.65.0 | 차트 위젯 | |
| table_calendar | ^3.0.10 | 캘린더 위젯 | |
| 데이터저장 | shared_preferences | ^2.2.0 | 로컬 데이터 저장 |
| hive | ^2.2.3 | NoSQL 데이터베이스 | |
| hive_flutter | ^1.1.0 | Hive for Flutter | |
| 위치정보 | geolocator | ^8.0.0 | 위치 기반 서비스 |
| geocoding | ^2.1.0 | 위치 정보 변환 |
| 패키지 | 버전 | 설명 |
|---|---|---|
| TypeScript & Node.js | ||
| typescript | ^5.0.4 | TypeScript 컴파일러 |
| ts-node | ^10.9.1 | TypeScript 실행 환경 |
| @types/node | ^18.15.11 | Node.js 타입 정의 |
| Firebase | firebase-admin | ^11.5.0 |
| firebase-functions | ^4.2.1 | |
| HTTP 클라이언트 | axios | ^1.3.4 |
| 환경설정 | dotenv | ^16.0.3 |
- Flutter SDK 3.19.3 이상
- Dart SDK 3.3.1 이상
- Node.js 18.x 이상
- Firebase CLI
- Android Studio / VS Code
-
저장소 클론
git clone https://github.com/CHACK-team/CHACK-project.git cd CHACK-project -
Flutter 의존성 설치
flutter pub get
-
Firebase 설정 파일 추가
google-services.json(Android):android/app/디렉토리에 추가GoogleService-Info.plist(iOS): Xcode 프로젝트에 추가
-
환경 변수 파일 생성
.env파일을 프로젝트 루트 디렉토리에 추가:NAVER_CLIENT_ID=your_naver_client_id NAVER_CLIENT_SECRET=your_naver_client_secret LIBRARY_DATANARU_API_KEY=your_library_datanaru_api_key VWORLD_API_KEY=your_vworld_api_key -
앱 실행
flutter run
-
Firebase Functions 설정
cd functions npm install
-
도서관 검색
GET /api/libraries
Query Parameters:- isbn: string
- latitude: number
- longitude: number
-
인기 도서 조회
GET /api/hot-books
Query Parameters:- ageGroup: string
<type>(<scope>): <subject>
<body>
<footer>
feat: 새로운 기능 추가fix: 버그 수정docs: 문서 변경style: 코드 형식 변경refactor: 코드 리팩토링test: 테스트 추가 및 수정
| Name | Role | Contact |
|---|---|---|
| 강연수 | Frontend Developer | Email: yskang009@gmail.com GitHub: @mamemomif |
| 문병진 | Frontend Developer | Email: qudwls5778@naver.com GitHub: @Moonbjin |
| 조현주 | UX/UI Design / Frontend | Email: butter0488@gmail.com GitHub: @hjuump |
| 홍영준 | Backend Developer | Email: moejihong@gmail.com GitHub: @HONGMOEJI |
가이드
- Fork the repository
- Create your feature branch:
git checkout -b feature/AmazingFeature - Commit your changes:
git commit -m 'feat: Add some AmazingFeature' - Push to the branch:
git push origin feature/AmazingFeature - Open a Pull Request
프로젝트에 대한 문의사항이나 버그 리포트는 Issues에 등록해주세요.
Made with ❤️ by CHACK Team