Application mobile Flutter de gestion intelligente de tâches individuelles et collaboratives.
- Authentification – Inscription / Connexion locale (SQLite)
- Gestion des projets – Création, modification, suppression avec couleurs personnalisées
- Gestion des tâches – CRUD complet avec statut (À faire / En cours / Terminé) et priorité (Faible / Moyenne / Haute)
- Collaboration – Assignation de tâches à des utilisateurs
- Mode hors-ligne – Données stockées localement (SQLite), synchronisation différée
- Sync MockAPI – Synchronisation automatique et manuelle avec l'API REST
- Notifications locales – Rappel 1h avant deadline, alerte d'assignation
- Mode sombre – Thème clair/sombre persistant
- Internationalisation – Français 🇫🇷 et Anglais 🇬🇧
MVC (Model – View – Controller)
lib/
├── models/ → UserModel, ProjectModel, TaskModel
├── controllers/ → AuthController, ProjectController, TaskController, ThemeController
├── views/ → Screens + Widgets
├── core/
│ ├── database/ → DatabaseHelper (SQLite)
│ ├── network/ → ApiService (MockAPI)
│ ├── theme/ → AppTheme
│ └── utils/ → NotificationService, DateUtils
└── l10n/ → app_fr.arb, app_en.arb
| Élément | Technologie |
|---|---|
| Framework | Flutter 3.x |
| Gestion d'état | Riverpod (StateNotifier) |
| Base de données locale | SQLite (sqflite) |
| Synchronisation API | MockAPI.io (REST) |
| Notifications | flutter_local_notifications |
| Polices | google_fonts (Plus Jakarta Sans) |
| i18n | flutter_localizations + ARB |
- Flutter SDK ≥ 3.0.0
- Dart SDK ≥ 3.0.0
- Un appareil Android/iOS ou émulateur
# 1. Cloner le projet
git clone <url-du-projet>
cd taskflow
# 2. Installer les dépendances
flutter pub get
# 3. Générer les fichiers de localisation
flutter gen-l10n
# 4. Lancer l'application
flutter run- Créer un compte sur mockapi.io
- Créer un projet
taskflow - Ajouter 3 ressources :
/users→ id, name, email, avatarUrl/projects→ id, name, description, color, ownerId, createdAt/tasks→ id, title, description, status, priority, projectId, creatorId, assigneeId, dueDate, createdAt
- Copier l'URL de base dans
lib/core/constants/api_constants.dart
static const String baseUrl = 'https://VOTRE_ID.mockapi.io/api/v1';(À ajouter après le premier lancement)
| Login | Projets | Tâches | Détail | Paramètres |
|---|---|---|---|---|
| ... | ... | ... | ... | ... |
| Critère | Points | Couvert |
|---|---|---|
| Fonctionnalités | 8pts | ✅ Auth, CRUD, Projets, Collaboration, SQLite |
| Architecture MVC | 4pts | ✅ MVC strict |
| UI/UX | 3pts | ✅ Material 3, Dark mode, animations |
| Riverpod | 2pts | ✅ StateNotifier partout |
| Bonus | 3pts | ✅ Notifications, Dark mode, Sync, i18n |
| Total | 20pts |
Mini-projet Flutter – Validation 24/04/2026