This project is about doing something you’ve never done before. Remind yourself of the beginning of your journey in computer science. Look at you now. Time to shine!
Subject Ft_transcendence Project 42
The goal of this project is to develop a website for playing Pong in matches and tournaments.
- Description: A dynamic website that manages users and offers two games: Pong and Flappy Bird.
- Feature:
- Single Page Application (SPA) architecture.
- Backend: Built with Django.
- Frontend: Utilizes Bootstrap, CSS, HTML, and JavaScript.
- Database: Powered by PostgreSQL.
- User management or authentication with API42 integration.
- Games: Pong and Flappy Bird with tournament modes.
- AI for Pong gameplay.
- Web Application Firewall (WAF) and Vault for secret management.
- Two-Factor Authentication (2FA) and JSON Web Tokens (JWT).
- Backend designed as a microservice.
- Compatibility with Chrome and Firefox browsers.
- How to Use: Run the command
docker compose up --build
to start the server. Then access the website athttps://localhost:8443/
.
Clone the Repository:
git clone [email protected]:acardona123/42_ft_transcendence.git
cd 42_ft_transcendence
- Copy each
.env.sample
file to create corresponding.env
files, and fill them with sensitive information. - Build and start the server:
docker compose up --build
- Access the website via
https://localhost:8443/
- Games:
- Play Pong or Flappy Bird in the following modes:
- Tournament.
- 1 vs 1.
- Against AI.
- Play Pong or Flappy Bird in the following modes:
- User Account Management:
- Register with a username and password.
- Register using your 42 account.
- Secure login with Google Two-Factor Authentication.
- Update your profile information.
- Social Features:
- View match history and statistics.
- Add and manage friends.