Ajout doc
This commit is contained in:
+25
-78
@@ -1,84 +1,31 @@
|
||||
# CESIZen - Application Mobile (Flutter)
|
||||
# 🤳 CESIZen - Application Mobile
|
||||
|
||||
CESIZen est une application de gestion de la santé mentale développée avec Flutter. Elle permet aux utilisateurs de suivre leur état émotionnel, de réaliser des diagnostics de stress et de pratiquer des exercices de relaxation.
|
||||
Application compagnon développée avec Flutter pour le suivi quotidien et les exercices de relaxation.
|
||||
|
||||
## 🚀 Fonctionnalités
|
||||
## 🛠️ Guide d'installation
|
||||
|
||||
- **Authentification Sécurisée** : Connexion et inscription via une API Laravel (JWT).
|
||||
- **Espace Santé Personnel** : Modification du profil (Nom, Email, Mot de passe).
|
||||
- **Diagnostic de Stress** : Basé sur l'échelle de **Holmes et Rahe** (données dynamiques via API).
|
||||
- **Tracker d'Émotions** : Journal de bord complet (CRUD) pour suivre son humeur.
|
||||
- **Cohérence Cardiaque** : Exercice de respiration guidé (5s inspiration / 5s expiration).
|
||||
- **Catalogue Détente** : Activités de relaxation (Méditation, Musique) filtrables par catégorie.
|
||||
### Prérequis
|
||||
- Flutter SDK (v3.19.x+)
|
||||
- Android Studio / VS Code
|
||||
- Un émulateur Android ou un appareil physique
|
||||
|
||||
### Étapes d'installation
|
||||
1. **Entrer dans le dossier** `mobile`.
|
||||
2. **Installer les packages** :
|
||||
```bash
|
||||
flutter pub get
|
||||
```
|
||||
3. **Configuration de l'API** :
|
||||
Modifier l'URL de base de l'API dans `lib/core/constants/api_constants.dart` pour pointer vers votre IP locale (ex: `http://192.168.1.XX:8091/api`).
|
||||
4. **Lancer l'application** :
|
||||
```bash
|
||||
flutter run
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Installation et Lancement
|
||||
|
||||
### 1. Prérequis
|
||||
- [Flutter SDK](https://docs.flutter.dev/get-started/install) (dernière version stable recommandée).
|
||||
- [Android Studio](https://developer.android.com/studio) ou [VS Code](https://code.visualstudio.com/).
|
||||
- Un émulateur Android ou un appareil physique avec le débogage USB activé.
|
||||
|
||||
### 2. Récupération du projet
|
||||
```bash
|
||||
git clone <url-du-depot>
|
||||
cd CESIZen/mobile
|
||||
```
|
||||
|
||||
### 3. Installation des dépendances
|
||||
```bash
|
||||
flutter pub get
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌐 Configuration de l'API
|
||||
|
||||
L'application communique avec un backend Laravel.
|
||||
|
||||
### URL de l'API
|
||||
La configuration se trouve dans `lib/core/network/dio_client.dart`.
|
||||
- **URL actuelle** : `https://apicesizen.sam-coffre.duckdns.org/api`
|
||||
|
||||
### Compatibilité et Sécurité (SSL Bypass)
|
||||
Pour faciliter le développement sur des serveurs avec des certificats auto-signés ou en cours de configuration, le client `Dio` est configuré pour **ignorer les erreurs de certificat SSL**.
|
||||
|
||||
Dans `lib/core/network/dio_client.dart` :
|
||||
```dart
|
||||
// Le code inclut un SecurityContext qui accepte tous les certificats
|
||||
(dio.httpClientAdapter as IOHttpClientAdapter).createHttpClient = () {
|
||||
final client = HttpClient();
|
||||
client.badCertificateCallback = (X509Certificate cert, String host, int port) => true;
|
||||
return client;
|
||||
};
|
||||
```
|
||||
|
||||
**Note importante :** Sur Android, assurez-vous que `android:usesCleartextTraffic="true"` est bien présent dans le `AndroidManifest.xml` si vous repassez en HTTP simple.
|
||||
|
||||
---
|
||||
|
||||
## 🏃 Lancer l'application
|
||||
|
||||
Pour lancer l'application en mode debug :
|
||||
|
||||
```bash
|
||||
flutter run
|
||||
```
|
||||
|
||||
Pour générer un APK de test :
|
||||
```bash
|
||||
flutter build apk --debug
|
||||
```
|
||||
|
||||
## 📂 Structure du Projet
|
||||
|
||||
- `lib/core/` : Configuration réseau (Dio) et thèmes.
|
||||
- `lib/features/auth/` : Gestion de l'authentification et du profil.
|
||||
- `lib/features/diagnostics/` : Logique du questionnaire Holmes & Rahe.
|
||||
- `lib/features/tracker/` : Journal des émotions (CRUD).
|
||||
- `lib/features/exercises/` : Exercice de cohérence cardiaque.
|
||||
- `lib/features/relaxation/` : Catalogue d'activités de détente.
|
||||
|
||||
---
|
||||
© 2024 CESIZen - Projet CDA
|
||||
## 🏗️ Architecture Technique
|
||||
- **Framework** : Flutter
|
||||
- **State Management** : Provider
|
||||
- **Synchronisation** : Google Wearable Data Layer (pour la montre)
|
||||
- **Rendu** : Impeller / Skia (60 FPS pour les animations de respiration)
|
||||
|
||||
Reference in New Issue
Block a user