diff --git a/modules.md b/modules.md new file mode 100644 index 0000000..e6ef225 --- /dev/null +++ b/modules.md @@ -0,0 +1,32 @@ +# Modules ft_transcendence + +| Type de module | Titre du module | Technologie | Description | +|----------------|-----------------------------|--------------------------------------|-----------------------------------------------------------------------------| +| Mandatory | Base Website | Technologies imposées | Créer un site web avec TypeScript, SPA, backend PHP (optionnel), Docker, sécurité (HTTPS, validation, hash, etc.) | +| Major | Backend Framework | Fastify (Node.js) | Créer un backend avec Fastify/Node.js | +| Major | Blockchain Score | Avalanche + Solidity | Enregistrer les scores de tournoi sur Avalanche via des smart contracts | +| Major | Standard User Management | Technos libres (features imposées) | Auth, profil, avatar, amis, stats, historique... | +| Major | Remote Auth | Google Sign-in | Authentification via Google | +| Major | Remote Players | Technos libres | Permettre à deux joueurs de jouer à distance | +| Major | Multiplayer Game | Technos libres | Mode de jeu à plus de 2 joueurs | +| Major | Add Another Game | Technos libres | Ajouter un second jeu avec matchmaking et historique | +| Major | Live Chat | Technos libres | MP, block, invite à jouer, profils depuis le chat | +| Major | AI Opponent | Technos libres (A* interdit) | IA qui simule un joueur humain (refresh 1s, entrées clavier simulées) | +| Major | WAF & Vault | WAF + ModSecurity + Vault | Sécuriser via WAF, ModSecurity, Vault pour les secrets | +| Major | 2FA + JWT | 2FA + JWT | Authentification double facteur avec tokens JWT sécurisés | +| Major | ELK Stack Logging | Elasticsearch + Logstash + Kibana | Stack ELK pour logs, analyse et visualisation | +| Major | Microservices Backend | Technos libres | Refactor backend en microservices | +| Major | Advanced 3D | Babylon.js | Pong en 3D avec Babylon.js | +| Major | Server-Side Pong | Technos libres | Pong serveur + API | +| Major | CLI vs Web Pong | Technos libres | Jouer depuis le CLI contre un joueur Web via API | +| Minor | Frontend Toolkit | Tailwind CSS (avec TypeScript) | Utiliser Tailwind CSS avec TypeScript pour le frontend | +| Minor | Database | SQLite | Ajouter un backend utilisant SQLite comme base de données | +| Minor | Game Customization | Technos libres | Options de jeu : powerups, maps, etc. | +| Minor | Stats Dashboards | Technos libres | Dashboards utilisateurs + parties | +| Minor | GDPR & Anonymization | Technos libres | Suppression de compte, anonymisation, gestion des données personnelles | +| Minor | Monitoring | Prometheus + Grafana | Supervision avec Prometheus et visualisation avec Grafana | +| Minor | Support All Devices | Technos libres | Responsive + support tactile, clavier, souris | +| Minor | Browser Compatibility | Technos libres | Support d’un navigateur supplémentaire | +| Minor | Multilingual | Technos libres | Site multilingue avec au moins 3 langues | +| Minor | Visual Impairment | Technos libres | Accessibilité visuelle : contrastes, navigation clavier, etc. | +| Minor | SSR | Technos libres | Server Side Rendering pour perf + SEO |