https://github.com/yvann-ba/ft_transcendence
https://github.com/yvann-ba/ft_transcendence
Last synced: 4 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/yvann-ba/ft_transcendence
- Owner: yvann-ba
- Created: 2025-04-07T15:55:23.000Z (13 days ago)
- Default Branch: main
- Last Pushed: 2025-04-07T17:10:21.000Z (13 days ago)
- Last Synced: 2025-04-07T17:30:17.620Z (13 days ago)
- Language: TypeScript
- Size: 14.4 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- trackawesomelist - yvann-ba/ft\_transcendence (â1) - Minimalist Project banner, clear GIF gallery in table layout. Colorful architecture diagram. Clear tech stack description. Team section with contributor avatars. (Recently Updated / [Apr 13, 2025](/content/2025/04/13/README.md))
- fucking-awesome-readme - yvann-ba/ft_transcendence - Minimalist Project banner, clear GIF gallery in table layout. Colorful architecture diagram. Clear tech stack description. Team section with contributor avatars. (Examples)
- awesome-readme - yvann-ba/ft_transcendence - Minimalist Project banner, clear GIF gallery in table layout. Colorful architecture diagram. Clear tech stack description. Team section with contributor avatars. (Examples)
README

### A full-stack multiplayer web app containerized with Docker and served via Nginx, featuring a TypeScript frontend and a Fastify (Node.js) backend with OAuth and JWT-based authentication
> Built by students from 42 School to showcase real-time gameplay, secure web architecture, and modular deployment.|  |  |
|:--:|:--:|
|  |  |
|  |  |đŦ Click to watch the Full Demo Video
[Watch the full demonstration of our application's features and gameplay](https://github.com/user-attachments/assets/25069b38-0d7d-47bb-bec5-01125281db57)
## How to Run It âī¸
### Prerequisites
- [Docker](https://www.docker.com/get-started) installed and running### Installation Steps
```bash
# Clone the repository
git clone https://github.com/yvann-ba/ft_transcendence.git
cd ft_transcendence# Create your .env file from example
cp .env.example .env
# Edit the .env file with your google auth values# Start the application with Docker
make
# OR for Windows users
docker-compose -f ./docker-compose.yml up --build# Access the application in your browser
https://localhost:8443
```> **Note**: For Google OAuth to work, create your credentials at [Google Cloud Console](https://console.cloud.google.com/) and add them to your .env file.
## How It Works đ§
![]()
**đšī¸ Game Experience:**
- Real-time WebSocket gameplay with smooth performance
- Customizable games (colors, rules, difficulty levels)
- Player dashboards with W/L stats and detailed match history**đ User Experience:**
- Fully localized in English, French, and Spanish
- Google & local authentication (JWT-secured)
- GDPR compliance tools: data download, anonymization, deletion**đ Security Layer:**
- JWT-protected routes & sessions
- HTTPS for all connections
- Robust validation on both frontend & backend
- XSS and SQL injection prevention
- Secrets & tokens stored securely in `.env`All this in a responsive Single Page Application that works seamlessly across modern browsers
## đ Check our Team
[//]: contributor-faces
---
[](https://github.com/matiassingers/awesome-readme)
This project is featured on [Awesome README](https://github.com/matiassingers/awesome-readme) list, a curated collection of nice README files with over 19,000 stars.