Skip to content

42 Project | Final project of 42 Common Core. Pong website with Devops Modules, database and some cool stuffs!

Notifications You must be signed in to change notification settings

Axiaaa/ft_transcendance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ–ฅ๏ธ ft_transcendance (Windows XPong) ๐Ÿ–ฅ๏ธ

Windows XP Banner

A nostalgic web-based multiplayer Pong game with modern features

42 School Project

๐Ÿš€ Welcome to ft_transcendance!

This project is the culmination of the 42 school common core, a feature-rich multiplayer Pong game with real-time chat, user profiles, and tournament systems - all wrapped in a delightful Windows XP inspired interface.


๐Ÿ“‹ Table of Contents


๐Ÿ” Overview

ft_transcendance transforms the classic Pong game into a modern web application. We've built it using NestJS for the backend, with a PostgreSQL database, and a responsive frontend - all containerized with Docker for easy deployment.

Windows XP Style Divider

โœจ Features

๐ŸชŸ Windows XP Interface System

Our application recreates the nostalgic Windows XP experience with:

  • Authentic Desktop Environment - Complete with start menu, taskbar, and desktop icons

Windows XP Interface Demo

  • Window Management - Drag, resize, minimize, and close windows just like the classic OS

Windows XP Interface Demo

  • Start Menu Navigation - Access all game features through the iconic Windows XP start menu

Windows XP Interface Demo

  • System Notifications - Receive alerts through authentic XP-style notification bubbles

Windows XP Interface Demo

  • Visual Authenticity - Carefully recreated XP visual elements including buttons, windows, and cursors

Windows XP Interface Demo

Windows XPong in action - Experience the nostalgic XP interface with modern web technologies

๐ŸŽฎ Game Features

  • Real-time Pong Gameplay - Experience smooth, responsive gameplay
  • Ranked Mode - Climb the competitive ladder with skill-based matchmaking
  • AI Opponents - Challenge our neural network powered AI with adaptive difficulty

Windows XP Interface Demo

  • Tournaments - Compete in organized tournaments

๐Ÿ‘ค User Features

  • User Authentication - Secure login and registration, password and username changing

Windows XP Interface Demo

  • Profile Customization - Customize your avatar and wallpaper

Windows XP Interface Demo

๐Ÿ’ฌ Social Features

  • Game Stats - Watch your games history with statsWindows XP Interface Demo

  • Friend System - Add friends and challenge them to matchesWindows XP Interface Demo

Windows XP Style Divider

๐Ÿ’ป Installation

# Clone the repository
git clone https://github.com/Axiaaa/ft_transcendance.git

# Navigate to project directory
cd ft_transcendance

# Copy the example file
cp .env_example .env

# Edit with your preferred text editor
nano .env

# Start the application using Docker Compose
make

Then visit https://localhost:443 in your browser!

Windows XP Style Divider

๐ŸŽฎ How to Play

  1. Create an Account - Sign up or login through OAuth
  2. Find a Match - Use quick play or challenge a friend
  3. Play the Game - Control your paddle with mouse or keyboard
Game Controls

๐Ÿงฉ Technologies

NodeJS
NodeJS
Backend Runtime
TypeScript
TypeScript
Frontend Language
BabylonJS
BabylonJS
3D Game Engine
SQLite
SQLite
Database
Docker
Docker
Containerization
Docker Compose
Docker Compose
Container Orchestration

Our tech stack is designed for performance and ease of deployment

Windows XP Style Divider

๐Ÿ› ๏ธ Configuration

The application can be configured through environment variables in the .env file:

  1. Create your environment file:

    # Copy the example file
    cp .env_example .env
    
    # Edit with your preferred text editor
    nano .env
  2. Customize your configuration: For security reasons, we strongly recommend changing the following values:

    • ELASTIC_PASSWORD and KIBANA_PASSWORD
    • ENCRYPTION_KEY
    • GRAFANA_USER and GRAFANA_PASSWORD
    • API_USERNAME and API_PASSWORD
    • DISCORD_WEBHOOK_URL (if you wish to receive notifications)

๐Ÿ‘ฅ Team

This project was created with love by:

Our Development Team

Jcuzin's GitHub Avatar
Jcuzin

๐Ÿ–ฅ๏ธ Windows XP UI/UX Designer
Lcamerly's GitHub Avatar
Lcamerly

๐Ÿ› ๏ธ Backend & DevOps
Aammirat's GitHub Avatar
Aammirat

๐Ÿ”’ Cybersecurity and API Integration
Mcourbon's GitHub Avatar
Mcourbon

๐ŸŽฎ Pong Game & Tournament Designer
Yallo's GitHub Avatar
Yallo

๐Ÿค– AI Opponent & Optimization

Our team worked together to bring this Windows XP nostalgia to life!

Windows XP Style Divider

โ“ FAQ

Q: Is my data secure?
A: Yes! We use industry-standard encryption for security.

Q: Can I play on mobile?
A: Absolutely! Our responsive design works on all devices.

Q: How is matchmaking determined?
A: Players are matched based on skill level determined by win/loss ratios.


ยฉ 2023 ft_transcendance Team | GitHub Repository

You've just experienced a blast from the past with our Windows XP-themed README!

About

42 Project | Final project of 42 Common Core. Pong website with Devops Modules, database and some cool stuffs!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published