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
Nigel 85eca5d301
Nigel/block user (#60)
* WIP block users

* Add test to check if the person for user X is blocked or not

* Added function isBlocked return true if user x is blocked by user y

* Added block ans un block messages

* Route / broadcast added ny Maix

* notification block and un block with icon now works, started clean up

* cleaning up the code

* cleaning up the code - WIP

* cleaning up the code - WIP

* clean up code - WIP

* clean up code - WIP

* WIP block users

* Add test to check if the person for user X is blocked or not

* Added function isBlocked return true if user x is blocked by user y

* Added block ans un block messages

* REBASE -trying

* REBASE trying

* REBASE problems

* REBASE problems

* REBASE problems

* MERGE problems

* REBASE problem

* REBASE problem

* clean up code - WIP

* MERGED master into nigel/blockUser

* linter OK

* TTT problem with package

* Deletes tic tac and icons
2025-12-16 15:21:07 +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
frontend Nigel/block user (#60) 2025-12-16 15:21:07 +01:00
logs feat(logs/kibana): made it so dashboard is default page 2025-11-14 18:32:28 +01:00
monitoring refactor(montoring/prometheus): removing the useless endpoint 2025-11-13 23:09:36 +01:00
nginx chore(cleanup): Fixed Makefile and Fully remove icons service 2025-12-12 14:56:50 +01:00
nginx-dev feat(frontend/auth): fix cookie not working due to path being /app 2025-11-11 00:20:26 +01:00
openapi-template feat(openapi): Add modified typescript-fetch template 2025-11-10 18:34:22 +01:00
src Nigel/block user (#60) 2025-12-16 15:21:07 +01:00
.envrc chore(deps): Removed unused deps and updated lockfiles 2025-12-10 17:10:11 +01:00
.gitignore chore(deps): updated deps and removed stray lockfile 2025-11-24 17:03:58 +01:00
docker-compose.yml chore(cleanup): Fixed Makefile and Fully remove icons service 2025-12-12 14:56:50 +01:00
Docker.mk chore(cleanup): Fixed Makefile and Fully remove icons service 2025-12-12 14:56:50 +01:00
env.example core(env): adding the elastic password to the env 2025-11-14 16:21:49 +01:00
flake.nix feat(frontend): scaffolding to build frontend 2025-11-11 00:20:26 +01:00
Makefile chore(cleanup): Fixed Makefile and Fully remove icons service 2025-12-12 14:56:50 +01:00
package.json Nigel/block user (#60) 2025-12-16 15:21:07 +01:00
pnpm-workspace.yaml feat(frontend): scaffolding to build frontend 2025-11-11 00:20:26 +01: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