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

wwwwelton/ft_transcendence

Repository files navigation

ft_transcendence

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

What is ft_transcendence?

ft_transcendence is an individual project at 42 which requires that we build an online platform to play Pong.

The backend must be built using NestJS, the frontend in any TypeScript framework of your choice and the database must be PostgreSQL. For the frontend, the chosen option was React, due to its popularity and extensive documentation.

There are no restraints in regards to external libraries and the website but it needs to be a single-page application. It should be compatible with Google Chrome and the other optional browser.

The user must log in using the OAuth system of 42 intranet and be able to enable a two-factor authentication method, for which we chose the Google Authenticator App.

Overall, the platform should have a ranking system, chat channels, private messages, profile editing, view users status and add other members as friends.

The platform should have a ranking system, chat channels, direct messaging and allow, user status changes, friend features and some profile customization options.

The main purpose is to play an implementation of Pong, as if it was 1972. all over again There should be a few customization options such as custom maps or power-ups but the user should still be able to play the original version. A spectator system must be implemented, spectators are able to watch the match without interfering with it.

Finally, the server structure must be containerized using docker and available with a single call of: docker-compose up --build.

Overview

alt text

Server Structure (Production)

alt text

Database Schema

Click here to view full image.

alt text

Badge

Skills

  • Rigor
  • Group & interpersonal
  • Web

My grade

Getting started (Staging)

Follow the steps below

# Clone the project and access the folder
git clone https://github.com/wwwwelton/ft_transcendence && cd ft_transcendence/

# Register a new application in 42 intra
# create a .env file with your app info into the back, front and project root folder
# examples are given in .env.example in each folder

# Run make install to install the packages
make install

# Run make up so you can build the images
# and run the containers in dev mode
make up

# Access the login page using the URL below
# Log in using your 42 account or one of the example accounts
http://localhost

# Run make down to stop running containers
make down

# Alert!
# This will clean up all your docker related files and containers
# Use this if you really want to clean your machine
make fclean

# Well done!

Updating

The project is regularly updated with bug fixes and code optimization.

📝 License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.


Made by: João Rodriguez 👋 See my github
Paulo Santana 👋 See my linkedin
Welton Leite 👋 See my linkedin

About

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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published