Skip to content

mmounib/ft_transendence

 
 

Repository files navigation

FT_TRANSCENDENCE

Project Description

"ft_Transcendence" is a dynamic and immersive full-stack online ping pong platform developed using cutting-edge technologies such as TypeScript, React, NestJS, and PostgreSQL. The project offers a unique and engaging online gaming experience, allowing users to play ping pong matches with friends and competitors from around the world.

Key Technologies Used

  • TypeScript: Utilized TypeScript for strong typing and enhanced code quality.
  • React: Employed React for the creation of a responsive and user-friendly front-end interface, providing an intuitive gaming experience.
  • NestJS: Implemented NestJS on the server-side, ensuring robust and scalable back-end operations.
  • PostgreSQL: Utilized PostgreSQL as the relational database to manage user data and game statistics efficiently.

Features

  • Real-time Gameplay: The project leverages real-time communication to provide an exciting and interactive gaming experience.
  • User Authentication: Users can register, log in, and maintain personal profiles with authentication features.
  • Friend System: Implemented a friend system that enables users to connect and challenge their friends to ping pong matches.
  • Game Statistics: Users can track their game statistics and performance over time, enhancing the competitive aspect.
  • Secure Database Management: Utilized PostgreSQL for secure and efficient data storage, ensuring data integrity and reliability.

Screenshots

HomePage

Game

Game-1

ProfilePage

GIF VIDEO

AppVideo

"FT_Transcendence" showcases a blend of modern technologies and a passion for gaming, resulting in an impressive and enjoyable ping pong gaming platform. It serves as a testament to my expertise in full-stack development and my ability to create engaging online experiences.

Environment variables

Backend environment variables

  • HOST_IP
  • SERVER_HOST
  • CLIENT_HOST
  • SERVER_PORT
  • CLIENT_PORT
  • CLIENT_ID
  • TOKEN_SECRET
  • CLIENT_SECRET
  • CALLBACK_URL

Frontend environment variables

  • VITE_HOST_IP
  • VITE_SERVER_HOST
  • VITE_CLIENT_HOST
  • VITE_SERVER_PORT
  • VITE_CLIENT_PORT
  • VITE_API

postgresql and backend environment variables

  • PG_USER (must have this value 'postgres')
  • PG_HOST
  • PG_PORT (Make sure to update it within the configuration file as well.)
  • PG_PASSWORD
  • PG_DATABASE

pgadmin environment variables

  • POSTGRESQL_PASS
  • DB_NAME
  • PMA_HOST
  • PMA_PORT
  • PGADMIN_DEFAULT_EMAIL
  • PGADMIN_DEFAULT_PASSWORD

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.5%
  • CSS 1.3%
  • Shell 0.5%
  • JavaScript 0.4%
  • Dockerfile 0.2%
  • HTML 0.1%