diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..09189d1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.direnv/ +.envrc +*.lock +node_modules/ +*.pdf diff --git a/README.MD b/README.MD new file mode 100644 index 0000000..e6ef225 --- /dev/null +++ b/README.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 | diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 96da37b..0000000 --- a/flake.lock +++ /dev/null @@ -1,60 +0,0 @@ -{ - "nodes": { - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1749657754, - "narHash": "sha256-eV/7fe0R1Lk/UON6iV9R3oZRZZgwjiBBQbralbV3VA8=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "60d45589a2a72a81f8b9e936180c7c66505bc2d0", - "type": "github" - }, - "original": { - "owner": "nixos", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -}