Implémentation du service de configuration dynamique pour le déploiement on-premise de l'application. Nouveaux fichiers : - entities/configuration.entity.ts : Entité TypeORM - modules/config/config.service.ts : Service avec cache et encryption - modules/config/config.module.ts : Module NestJS - modules/config/index.ts : Export centralisé Fonctionnalités : ✅ Cache en mémoire au démarrage (16 configurations) ✅ Chiffrement AES-256-CBC pour valeurs sensibles ✅ Conversion automatique de types (string/number/boolean/json) ✅ Méthodes get/set avec traçabilité ✅ Récupération par catégorie (email/app/security) ✅ Masquage automatique des mots de passe ✅ Support setup wizard (isSetupCompleted) Sécurité : - Clé de chiffrement depuis CONFIG_ENCRYPTION_KEY - Format iv:encrypted pour AES-256-CBC - Mots de passe masqués dans les API Intégration : - AppConfigModule ajouté à app.module.ts - Service global exporté pour utilisation dans toute l'app - Chargement automatique au démarrage (OnModuleInit) Tests : ✅ Build Docker réussi ✅ 16 configurations chargées en cache ✅ Service démarré sans erreur Ref: #5
P'titsPas
Plateforme de gestion de la garde d'enfants pour les collectivités locales.
Workflow de développement
Le projet suit un workflow simple :
develop: branche principale de développementmain: branche des versions stables
Processus de release
- Développement sur la branche
develop - Tests et validation
- Merge vers
mainavec tag de version - Mise à jour du CHANGELOG.md
Charte graphique
- Nom : P'titsPas
- Couleurs principales :
- Bleu : #2B6CB0 (inspiré du logo)
- Blanc : #FFFFFF
- Gris clair : #F7FAFC
- Typographie :
- Titres : Google Fonts "Comfortaa"
- Corps : Google Fonts "Roboto"
Prérequis
Backend
- Node.js (version 18 ou supérieure)
- PostgreSQL (version 15 ou supérieure)
- npm (version 9 ou supérieure)
Frontend
- Flutter SDK (version 3.0 ou supérieure)
- Dart SDK (version 3.0 ou supérieure)
- Chrome (pour le développement web)
Installation
- Cloner le dépôt :
git clone [URL_DU_REPO]
cd ptitspas
git checkout develop
- Installer le backend :
cd backend
npm install
- Installer le frontend :
cd ../frontend
flutter pub get
- Configurer la base de données :
# Créer la base de données
createdb ptitspas
# Configurer les variables d'environnement
cp .env.example .env
# Éditer le fichier .env avec vos paramètres de base de données
Démarrage
- Démarrer le backend :
cd backend
npm run dev
- Démarrer le frontend :
cd frontend
flutter run -d chrome
Accès aux services
- Frontend : http://localhost:8080
- Backend API : http://localhost:3000
- Base de données PostgreSQL : localhost:5432
Structure du projet
ptitspas/
├── backend/ # API Node.js/Express
│ ├── src/ # Code source
│ ├── prisma/ # Configuration de la base de données
│ └── tests/ # Tests
├── frontend/ # Application Flutter
│ ├── lib/ # Code source
│ ├── assets/ # Images, polices, etc.
│ └── test/ # Tests
├── CHANGELOG.md # Historique des versions
└── README.md # Documentation
Développement
Backend
- Langage : TypeScript
- Framework : Express
- Base de données : PostgreSQL avec Prisma
- API : REST avec OpenAPI 3
Frontend
- Framework : Flutter
- État : Provider
- Navigation : Go Router
- UI : Material Design avec thème personnalisé
Tests
# Backend
cd backend
npm test
# Frontend
cd frontend
flutter test
Licence
Propriétaire - Tous droits réservés
Description
Languages
Dart
57.9%
TypeScript
32.7%
C++
4%
CMake
2.1%
PLpgSQL
1.9%
Other
1.4%