The ft_transcendance is a collaborative project at 42 School, involving the development of a website. Users are able to create accounts through the 42 API, engage in real-time multiplayer Pong games, and communicate through both public and private chat rooms.
To launch the project, simply :
- Use the command
make
which is configured in theMakefile
to start the Docker containers. - Access the Django application at
http://localhost
.
Frontend :
- JavaScript, HTML, CSS: For creating and styling the user interface.
- Three.js: For rendering 3D graphics in the browser.
Backend :
- Django: Framework for building robust and scalable server-side applications.
- PostgreSQL: Database for managing and storing application data.
- Use a backend framework (Django)
- Use a database in the backend (PostgreSQL)
- Standard user management, authentication, users in tournaments
- Implement remote authentication
- Multiple players
- Game customization options
- Implement two-factor authentication (2FA) and JWT (JSON Web Tokens)
- Use of advanced 3D techniques (Three.js)
- Support for multiple languages (en, fr, es)
Through this project, I've gained proficiency in:
- Full Stack Web Development:
- Developing frontend using JavaScript, HTML and CSS and the backend using Django.
- Real-time Communication:
- Implementing websockets for real-time data exchange and live interactions between clients.
- User Authentication and Security:
- Integrating user authentication systems.
- Implementing two-factor authentication (2FA).
- Secure handling of JSON Web Tokens (JWT) for maintaining user sessions.
- Database Management:
- Designing and managing databases using PostgreSQL.
- Ensuring data integrity and security.
- 3D Graphics and Animation:
- Using Three.js for rendering 3D graphics in the browser.
- Understanding basic principles of 3D modeling and animation.
- Project Management and Collaboration:
- Utilizing version control systems like Git effectively in a team environment.
- Employing agile development practices.
- Managing project tasks and timelines using Git Project.
Go to 42 Québec to discover the course ! 👈
This was the last project of the 42 common core!