Skip to content

alpardayalman/Transcendence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Transcendence

-----------------------------------------------------

Developers

Emircan Kaymaz
Emircan Kaymaz

Talha Acikgoz
Talha Acikgoz

Yunus Emre Aktas
Eyüp Kemal Karaoğlu

Sarp Erkiralp
Sarp Erkiralp

Alp A. Yalman
Alp A. Yalman

-----------------------------------------------------

Our score 110% (This is not the last version chat is unfinished here but challange yourself :))

To-do

To-do part 1

Minimal Technical requirement

  • Docker: docker-compose up --build (rootless mode for security)
  • Backend Module ruby -> Django (Backend module)
  • Database -> PostGre (Database module)
  • Frontend Module vanilla -> bootstrap (FrontEnd module)
  • Single page
  • Google chrome latest stable up-to-date version

Game Pong

  • Pong, same keyboard input (Remote player module)
  • propose a tournament
  • registration system (standard user management module)
  • matchmaking system
  • (front-end module)
  • (Graphics module)
  • ness test

Security

  • Hashing (in database for password)
  • Protection SQL injections/XSS
  • HTTPS
  • Validation form for user input on the server side.
  • .env file must be out.

Total score: 30%

-----------------------------------------------------

Second Part

To-do part 2

WEB

Major module: Use a Framework as backend. +10

  • Django.

Minor module: Use a front-end framework or toolkit. +5

  • Bootstrap

Minor module: Use a database for the backend. +5

  • PostgreSQL

User Management

Major module: Standard user management, authentication, users across tournaments. +10

  • Users can subscribe to the website in a secure way.
  • Registered users can log in in a secure way.
  • Users can select a unique display name to play the tournaments.
  • Users can update their information.
  • Users can upload an avatar, with a default option if none is provided.
  • Users can add others as friends and view their online status.
  • User profiles display stats, such as wins and losses.
  • Each user has a Match History including 1v1 games, dates, and relevant details, accessible to logged-in users.

Major module: Implementing a remote authentication. +10

  • Integrate the authentication system, allowing users to securely sign in.
  • Obtain the necessary credentials and permissions from the authority to enable a secure login.
  • Implement user-friendly login and authorization flows that adhere to best practices and security standards.
  • Ensure the secure exchange of authentication tokens and user information between the web application and the authentication provider.

Gameplay and user Experience

Major module: Live chat. +10

  • The user should be able to send direct messages to other users.
  • The user should be able to block other users. This way, they will see no more messages from the account they blocked.
  • The user should be able to invite other users to play a Pong game through the chat interface.
  • The tournament system should be able to warn users expected for the next game.
  • The user should be able to access other players profiles through the chat interface.

Cybersecurity

Major module: Implement Two-Factor Authentication (2FA) and JWT. +10

  • Implement Two-Factor Authentication (2FA) as an additional layer of security for user accounts, requiring users to provide a secondary verification method, such as a one-time code, in addition to their password.
  • Utilize JSON Web Tokens (JWT) as a secure method for authentication and authorization, ensuring that user sessions and access to resources are managed securely.
  • Provide a user-friendly setup process for enabling 2FA, with options for SMS codes, authenticator apps, or email-based verification
  • Ensure that JWT tokens are issued and validated securely to prevent unauthorized access to user accounts and sensitive data.

Graphics

Major module: Use of advanced 3D techniques. +10

  • Advanced 3D Graphics: The primary goal of this module is to implement advanced 3D graphics techniques to elevate the visual quality of the Pong game. By utilizing ThreeJS/WebGL , we aim to create stunning visual effects that immerse players in the gaming environment.
  • Immersive Gameplay: The incorporation of advanced 3D techniques enhances the overall gameplay experience by providing users with a visually engaging and captivating Pong game.
  • Technology Integration: The chosen technology for this module is ThreeJS/WebGL . These tools will be used to create the 3D graphics, ensuring compatibility and optimal performance.

Minor module: Multiple language supports. +5

  • Implement support for a minimum of three languages on the website to accommodate a broad audience.
  • Provide a language switcher or selector that allows users to easily change the website’s language based on their preferences.
  • Translate essential website content, such as navigation menus, headings, and key information, into the supported languages.
  • Ensure that users can navigate and interact with the website seamlessly, regardless of the selected language.
  • Consider using language packs or localization libraries to simplify the translation process and maintain consistency across different languages.
  • Allow users to set their preferred language as a default choice for subsequent visits to the website.

Total score: 110%

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5