공학 계열 대학생을 위한 집중 학습 시간 검증 및 랭킹 서비스
Flutter 기반 모바일 앱으로 SSID 기반 학습 검증, 실시간 시간 기록, 랭킹 기능을 제공합니다.
Geumpumta는 공학 계열 대학생을 대상으로
실제 학습 시간을 보다 정확하게 측정하고 비교할 수 있도록 설계된
집중 학습 시간 검증 및 랭킹 서비스입니다.
본 서비스는 Wi-Fi SSID 기반 인증을 통해 학습 환경을 제한함으로써
부정한 시간 기록을 방지하고,
Timer + Heartbeat 구조를 이용해 서버와 학습 시간을 실시간으로 동기화합니다.
이를 통해 개인 단위뿐만 아니라
학과 및 전체 단위의 공정한 랭킹과 통계 정보를 제공합니다.
| Flutter |
State |
Architecture |
Network |
Storage |
| Flutter 3.35.3 |
Riverpod |
MVVM |
Dio + Retrofit |
SharedPreferences |
| Version Control |
IDE |
Platform |
| Git / GitHub |
Android Studio / Xcode |
iOS / Android |
lib/
├── main.dart
├── models/
├── provider/
├── repository/
├── routes/
├── screens/
├── services/
├── viewmodel/
└── widgets/
- OAuth 로그인 (Kakao / Google / Apple)
- Access / Refresh Token 관리
- 중복 로그인 방지
- 서버 기반 학습 세션 관리
- 주기적 Heartbeat 전송
- 앱 재실행 시 시간 유지
- SSID/BSSID 검증
- 지정된 네트워크에서만 학습 허용
- 개인 / 학과 / 전체 랭킹
- 일간 / 주간 / 월간 통계
Frontend–Backend 간 학습 세션 관리 및 랭킹 처리 아키텍처
| 메인 타이머 |
타이머 실행 |
Wi-Fi 에러 |
종료 경고 |
 |
 |
 |
 |
| 역할 |
담당 |
| Frontend (메인, 랭킹) |
이민우 |
| Frontend (통계, 더보기) |
허광민 |
- GPS / Beacon 인증
- 주간 목표 기능
- 디자인 시스템 개선
- Firebase Analytics / Crashlytics