# Certificate Management System - Version Modernisée ## 🚀 Nouvelle Architecture Cette version modernisée utilise les technologies suivantes : ### Frontend - **React 18** avec TypeScript - **Vite** pour le build et le développement - **Tailwind CSS** pour le styling - **React Query** pour la gestion des données - **Zustand** pour le state management - **React Hook Form** pour les formulaires - **i18next** pour l'internationalisation ### Backend - **PHP 8.3** avec architecture API REST - **API versionnée** (v1) avec responses standardisées - **Middleware d'authentification** moderne - **OpenAPI/Swagger** documentation - **Validation robuste** des données ### DevOps - **Docker multi-stage** builds - **Hot reload** en développement - **Environnements séparés** (dev/prod) - **Healthchecks** et monitoring - **CI/CD** amélioré avec tests automatisés ## 🛠 Installation et Développement ### Prérequis - Docker et Docker Compose - Node.js 18+ (pour le développement local) ### Démarrage rapide 1. **Clone et configuration :** ```bash git clone cd certificate-management cp .env.example .env ``` 2. **Développement avec hot reload :** ```bash # Démarrer tous les services en mode développement docker-compose -f docker-compose.dev.yml up -d # Ou démarrer individuellement npm install # Installer les dépendances frontend npm run dev # Frontend avec hot reload sur :3000 ``` 3. **Production :** ```bash docker-compose up -d ``` ### URLs de développement - **Frontend**: http://localhost:3000 - **Backend API**: http://localhost:980/api/v1 - **Application Legacy**: http://localhost:980 ## 📱 Nouvelles Fonctionnalités ### Interface Utilisateur - **Design System** moderne avec Tailwind CSS - **Mode sombre/clair** avec persistence - **Interface responsive** optimisée mobile - **Composants réutilisables** avec TypeScript - **Loading states** et error handling améliorés - **Toast notifications** pour les feedbacks ### API REST - **Endpoints RESTful** standardisés - **Responses JSON** unifiées - **Authentification par token** (Bearer) - **Validation des données** robuste - **Codes d'erreur HTTP** appropriés - **Documentation API** automatique ### Gestion des États - **State management** avec Zustand - **Cache intelligent** avec React Query - **Optimistic updates** pour une UX fluide - **Persistance** des préférences utilisateur ### Sécurité Renforcée - **Headers de sécurité** (CORS, CSP) - **Validation stricte** côté client et serveur - **Sanitization** des inputs - **Rate limiting** sur les APIs sensibles ## 🧪 Tests et Qualité ### Frontend ```bash npm run test # Tests unitaires avec Vitest npm run test:ui # Interface de test npm run test:coverage # Couverture de code npm run lint # ESLint npm run type-check # Vérification TypeScript ``` ### Backend ```bash # Dans le conteneur PHP composer test # PHPUnit composer analyse # Analyse statique ``` ### CI/CD - **Tests automatisés** sur chaque PR - **Build multi-environnements** - **Déploiement automatique** avec validation - **Monitoring** de la santé des services ## 📊 Monitoring et Observabilité ### Métriques - **Performance monitoring** des APIs - **Error tracking** centralisé - **Usage analytics** des fonctionnalités - **Alertes** en cas de problème ### Logs Structurés - **Logs JSON** pour faciliter l'analyse - **Corrélation** des requêtes - **Niveaux de logs** appropriés - **Rotation automatique** des logs ## 🔄 Migration depuis l'Ancienne Version L'ancienne interface PHP reste accessible et fonctionne en parallèle. La migration se fait progressivement : 1. **Phase 1** : API REST en parallèle ✅ 2. **Phase 2** : Nouvelle interface React ✅ 3. **Phase 3** : Migration des utilisateurs 4. **Phase 4** : Dépréciation de l'ancienne interface ## 🚧 Roadmap ### Version 2.1 (Q1 2024) - [ ] **WebSocket** pour les notifications temps réel - [ ] **Dashboard avancé** avec graphiques - [ ] **Audit trail** complet - [ ] **API Rate limiting** avancé ### Version 2.2 (Q2 2024) - [ ] **Multi-tenancy** pour les organisations - [ ] **SSO/SAML** integration - [ ] **Backup automatique** des certificats - [ ] **Mobile app** React Native ### Version 3.0 (Q3 2024) - [ ] **Microservices** architecture - [ ] **Kubernetes** deployment - [ ] **GraphQL** API - [ ] **Machine Learning** pour la détection d'anomalies ## 📖 Documentation - [Guide d'installation détaillé](./docs/installation.md) - [Documentation API](./docs/API.md) - [Guide de développement](./docs/development.md) - [Architecture](./docs/architecture.md) - [Sécurité](./docs/security.md) ## 🤝 Contribution 1. Fork le projet 2. Créer une branche feature (`git checkout -b feature/amazing-feature`) 3. Commit les changements (`git commit -m 'Add amazing feature'`) 4. Push vers la branche (`git push origin feature/amazing-feature`) 5. Ouvrir une Pull Request ### Standards de Code - **ESLint + Prettier** pour JavaScript/TypeScript - **PSR-12** pour PHP - **Conventional Commits** pour les messages - **Tests obligatoires** pour les nouvelles fonctionnalités ## 📄 Licence Ce projet est sous licence AGPL-3.0. Voir le fichier [LICENSE](LICENSE) pour plus de détails. ## 🆘 Support - **Issues GitHub** pour les bugs - **Discussions** pour les questions - **Wiki** pour la documentation communautaire - **Discord** pour le chat en temps réel --- **Made with ❤️ by the Certificate Management Team**