Skip to content

This project is about creating a website for the mighty Pong contest!

License

Notifications You must be signed in to change notification settings

angelamcosta/ft_transcendence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alien Monster ft_transcendence

GitHub Language Count GitHub Top Language GitHub Contributors GitHub Last Commit Github License wakatime

This project is about creating a website for the mighty Pong contest! The subject of the project can be found here.

Minimal technical requirement

Important

Some of these contraints could be overriden by the choice of specific modules.

The project must comply with the following rules:

  • Development of the site can be done with or without a backend.
    • If a backend is included, it must be written in pure Ruby, unless overridden by the Framework module.
    • If a backend or framework uses a database, the constraints of the Database module must be followed.
  • The frontend should be developed using pure vanilla JavaScript, unless altered through the FrontEnd module.
  • The website must be a single-page application, allowing the use of the Back and Forward buttons in the browser.
  • Compatibility with the latest stable version of Google Chrome is required.
  • Users should not encounter any unhandled errors or warnings while browsing the website.
  • The entire project must be launched with a single command line to run an autonomous container provided by Docker. Example: docker-compose up --build or make.

Modules

To attain 100% project completion, a minimum of 7 major modules is required. Two Minor Modules are equivalent to one Major Module.

Web

  • Major module: Use a Framework as backend.
    • Django
  • Minor module: Use a front-end framework or toolkit.
    • Bootstrap
  • Minor module: Use a database for the backend.
    • PostgreSQL
  • Major module: Store the score of a tournament in the Blockchain.

User Management

  • Major module: Standard user management, authentication, users across tournaments.
  • Major module: Implementing a remote authentication.

Gameplay and User Experience

  • Major module: Remote players.
  • Major module: Multiplayers (more than 2 in the same game).
  • Major module: Add Another Game with User History and Matchmaking.
  • Minor module: Game Customization Options.
  • Major module: Live chat.

AI-Algo

  • Major module: Introduce an AI Opponent.
  • Minor module: User and Game Stats Dashboards.

Cybersecurity

  • Major module: Implement WAF/ModSecurity with Hardened Configuration and HashiCorp Vault for Secrets Management.
  • Minor module: GDPR Compliance Options with User Anonymization, Local Data Management, and Account Deletion.
  • Major module: Implement Two-Factor Authentication (2FA) and JWT.

Devops

  • Major module: Infrastructure Setup for Log Management.
  • Minor module: Monitoring system.
  • Major module: Designing the Backend as Microservices.

Graphics

  • Major module: Use of advanced 3D techniques.

Accessibility

  • Minor module: Support on all devices.
  • Minor module: Expanding Browser Compatibility.
  • Minor module: Multiple language supports.
  • Minor module: Add accessibility for Visually Impaired Users.
  • Minor module: Server-Side Rendering (SSR) Integration.

Server-Side Pong

  • Major module: Replacing Basic Pong with Server-Side Pong and Imple- menting an API.
  • Major module: Enabling Pong Gameplay via CLI against Web Users with API Integration.

References

Footnotes

  1. Setting up a venv for a Django project

About

This project is about creating a website for the mighty Pong contest!

Resources

License

Stars

Watchers

Forks