Phase 2 du MVP Flutter : vérification PIN locale, application des règles par famille, suivi des mouvements et correction avec plancher à 0. Co-authored-by: Cursor <cursoragent@cursor.com>
55 lines
1.3 KiB
Markdown
55 lines
1.3 KiB
Markdown
# Bons Points — Application Android (Flutter)
|
|
|
|
App familiale de bons points, **100 % locale** (SQLite, pas de compte cloud).
|
|
|
|
## Stack (choix par défaut — voir CDC §14)
|
|
|
|
| Couche | Choix |
|
|
|--------|--------|
|
|
| UI | Flutter + Material 3 |
|
|
| État | **Riverpod** |
|
|
| BDD | **Drift** (SQLite) |
|
|
| PIN | bcrypt |
|
|
|
|
## Démarrage
|
|
|
|
```bash
|
|
cd mobile
|
|
flutter pub get
|
|
dart run build_runner build # après modification des tables Drift
|
|
flutter run
|
|
```
|
|
|
|
## Structure
|
|
|
|
```
|
|
lib/
|
|
├── main.dart / app.dart
|
|
├── core/theme/ # charte visuelle (prototype web)
|
|
├── data/
|
|
│ ├── database/ # schéma SQLite (port de web/src/db.js)
|
|
│ ├── seed/ # règles & récompenses par défaut
|
|
│ └── repositories/
|
|
├── providers/
|
|
└── features/
|
|
├── onboarding/ # bienvenue → enfant → PIN → règles
|
|
└── dashboard/ # tableau de bord MVP
|
|
```
|
|
|
|
## État actuel (phase 1)
|
|
|
|
- [x] Projet Flutter (`fr.ptitspas.bonpoint`, Android seul)
|
|
- [x] Schéma SQLite + seed règles/récompenses
|
|
- [x] Logique score (plancher 0, delta réel)
|
|
- [x] Onboarding sans compte (4 étapes)
|
|
- [x] Tableau de bord minimal
|
|
- [x] Espace parent (PIN, grille règles, historique, annulation)
|
|
- [ ] Fiche enfant + boutique
|
|
- [ ] Export/import, IAP, AdMob
|
|
|
|
## Tests
|
|
|
|
```bash
|
|
flutter test
|
|
```
|