Flutter carousel demo project
- Dart 99.9%
- Replace ListView.separated with grouped ListView.builder by date/category
- Add MenuAnchor + FilterChip for Date/Catégories grouping toggle
- Redesign _showDialog → M3 Modal Bottom Sheet with icon picker, date picker, custom animation
- Remove _sheetCtrl global controller; local controller with safe lifecycle
- Add _BouncySwipe State recycling fix: reset _dx after dismiss + ValueKey
- Fix tutorial identity check: compare by id, reset _tutorialActive on delete
- Add _parseDate helper for French date strings
- Remove obsolete CarrouselPage ('Découvrir' tab)
- Clean up compiler warnings and imports
|
||
|---|---|---|
| android | ||
| lib | ||
| test | ||
| .gitignore | ||
| .metadata | ||
| analysis_options.yaml | ||
| pubspec.lock | ||
| pubspec.yaml | ||
| README.md | ||
Carrousel Demo
Application Flutter de démonstration de transactions bancaires avec persistance SQLite, gestures swipe-to-delete, et explorations Material Design 3.
Fonctionnalités
- Transactions — Ajout, modification, suppression d'opérations bancaires (crédit/débit)
- Persistance SQLite — Données stockées localement via
sqflite, seed automatique au premier lancement - Swipe-to-delete — Glisser à gauche pour supprimer avec différentes implémentations visuelles
- Thème Material You — Palette dynamique via
ColorScheme.fromSeed, variante expressive, bascule clair/sombre - Exploration MD3 — Container transform, Material 3 expanding cards
Structure du projet
lib/
├── main.dart # Point d'entrée, navigation 6 tabs
├── transactions_page.dart # Liste des transactions avec CRUD et Dismissible
├── database_helper.dart # Singleton SQLite (table `transactions`)
├── explore_page.dart # Cartes MD3 avec container transform
├── theme_config.dart # ChangeNotifier pour thème live
├── theme_test_page.dart # Réglages seed color, brightness, variant
├── budget_page.dart # Page budget avec FAB placeholder
├── swipe_test_page.dart # Hub des tests d'interactions
└── tests/
├── swipe_test_03.dart # Barre persistante sur le bord droit
├── swipe_test_04.dart # Dégradé de bord (errorContainer)
├── swipe_test_05.dart # Snackbar au premier accès
├── swipe_test_06.dart # Chip "Glisser pour supprimer" en pied de liste
└── swipe_test_07.dart # Animation tutorielle (slide + retour)
Démarrage
flutter pub get
flutter run
Build
flutter build apk --debug
Stack
| Technologie | Usage |
|---|---|
| Flutter 3.x | UI framework |
| Material Design 3 | Thème, composants, couleurs |
| sqflite | Base de données locale |
| path | Résolution du chemin DB |
| Dart | Langage |