Design, develop, and organize a full-stack web application with complete creative freedom. Choose your project concept, select from a wide range of technical modules, and make key architectural decisions. This highly flexible project allows you to explore modern web development while demonstrating your technical skills and creativity through a modular approach.
Find a file
Maieul BOYER 26627cd4d7 feat(infra/nginx): Fixed nginx redirection and fixed dockerfiles
- nginx now use "raw" proxy_pass, where it doesnt supply the $uri since
  if only the host is provided, nginx will handle lots of usecases
- pnpm now uses the lockfile correctly
- Docker: use lockfile in all steps
- Docker: install the necessary packages if building from source is
  needed (better-sqlite3 for example)
2025-10-28 13:47:20 +01:00
.github/workflows core(ci/husky): Added husky and CI Jobs 2025-10-07 22:18:23 +02:00
.husky core(ci/husky): Added husky and CI Jobs 2025-10-07 22:18:23 +02:00
nginx feat(infra/nginx): Fixed nginx redirection and fixed dockerfiles 2025-10-28 13:47:20 +01:00
src feat(infra/nginx): Fixed nginx redirection and fixed dockerfiles 2025-10-28 13:47:20 +01:00
.envrc update: first commit 2025-06-11 18:46:56 +02:00
.gitignore feat(infra/nginx): Fixed nginx redirection and fixed dockerfiles 2025-10-28 13:47:20 +01:00
docker-compose.yml fix(shared/auth/icon): Fixed lots of small things 2025-10-11 14:29:00 +02:00
Docker.mk feat(infra): singular dockerfile with vite bundling 2025-07-30 21:30:04 +02:00
flake.nix core(ci/husky): Added husky and CI Jobs 2025-10-07 22:18:23 +02:00
Makefile core(eslint): added Makefile rule to run eslint 2025-10-11 14:29:00 +02:00
package-lock.json core(ci/husky): Added husky and CI Jobs 2025-10-07 22:18:23 +02:00
package.json core(ci/husky): Added husky and CI Jobs 2025-10-07 22:18:23 +02:00
pnpm-workspace.yaml core(ci/husky): Added husky and CI Jobs 2025-10-07 22:18:23 +02:00
README.MD Rename README to README.MD 2025-07-09 17:22:01 +02:00

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 dun 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