Skip to content

This project aims to create an online gaming & chatting platform.

Notifications You must be signed in to change notification settings

imadmi/Transcendence-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

This project aims to create a comprehensive online gaming platform with a focus on playing Pong versus other players. The website is designed with security, functionality, and user experience in mind.

Technology Stack

  • Backend: NestJS
  • Frontend: TypeScript framework of your choice
  • Database: PostgreSQL
  • Deployment: Docker with a single launch command: docker-compose up --build

Development Guidelines

  • Use the latest stable versions of all libraries and frameworks.
  • Ensure the website is a single-page application for smooth navigation.
  • Compatibility with the latest stable version of Google Chrome and one additional web browser of your choice.
  • No unhandled errors or warnings during website browsing.

Security Concerns

  • Passwords stored in the database must be hashed.
  • Protection against SQL injections.
  • Implement server-side validation for forms and user input.
  • Utilize a strong password hashing algorithm.
  • Store sensitive information in a local .env file, not in version control, to avoid security risks.

User Account Management

  • Login using the OAuth system of 42 intranet.
  • Choose a unique display name and upload an avatar.
  • Enable two-factor authentication (e.g., Google Authenticator or text message).
  • Add other users as friends, view their status, and display stats on the user profile.
  • Maintain a Match History for 1v1 games, ladder, and other useful information.

Chat Functionality

  • Create public, private, or password-protected chat channels.
  • Send direct messages to other users.
  • Block other users to avoid receiving messages.
  • Channel owners/administrators can manage channel settings, including passwords and user permissions.
  • Invite other users to play Pong through the chat interface.
  • Access other players' profiles within the chat interface.

Pong Game Integration

  • Play live Pong games directly on the website.
  • Implement a matchmaking system for automatic player pairing.
  • Offer customization options such as power-ups or different maps.
  • Ensure the game is responsive, considering network issues like disconnection or lag.
# Project Screenshots
auth.mov
rest.mov

Landing Page

Landing Page

Sign Up

Sign Up

Sign In

Sign In

Profile

Profile

Notifications

Notifications

Leaderboard

Leaderboard

Friends

Friends

Channels

Channels

Chat

Chat

Game

Game

About

This project aims to create an online gaming & chatting platform.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages