Skip to content

acardona123/42_ft_transcendence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💻 Ft_transcendence

Ft_transcendence Project Image

DjangoREST Django Nginx Docker Vault ModSecurity Bootstrap HTML5 CSS3 JavaScript

About

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.

Features

  • 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 at https://localhost:8443/.

Setup

Clone the Repository:

git clone [email protected]:acardona123/42_ft_transcendence.git
cd 42_ft_transcendence

Usage

  1. Copy each .env.sample file to create corresponding .env files, and fill them with sensitive information.
  2. Build and start the server:
    docker compose up --build
  3. Access the website via https://localhost:8443/

Website Features:

  • Games:
    • Play Pong or Flappy Bird in the following modes:
      • Tournament.
      • 1 vs 1.
      • Against AI.
  • 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.

Code Structure

Structure Schema

Overview

1. Main menu

Main_menu_img

2. Pong game

Pong_game_img

3. Flappy bird duo game

Flpayy_bird_game_img

4. Profile

profile_img

5. Editing profile

Edit_profile_img

6. Tournaments

ttournaments_img

7. Double factor authentification

2fa_img

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •