Skip to content

My first web application: a online pong-game platform for users

Notifications You must be signed in to change notification settings

BlueGrizzliBear/ft_transcendence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ft_transcendence

A web application for playing online multiplayer pong games. Logging in with your 42 School account is required.

The application is implemented as a SPA (Single Page Application). Built with Ruby on Rails framework, deployed via Docker.

  • Front-end: Javascript (usage of Backbone.js), HTML, CSS.
  • Back-end: Ruby, SQL (through PostgreSQL database)

Context

This project was done as part of 42's Software Engineer program, as a team of 5 members. Project was passed the 20th July 2021.

Usage

Launch the project

  1. Launch Docker

  2. Launch the project with the following command inside the repository

docker-compose up --build

When the project is launched, the website can be accessed on localhost (via http://localhost).

Features

The web application features:

  • A login page that enables the user to connect with its 42 School account.
  • An online pong game for logged-in users to play pong against each other: playing the game can either be done through normal matchmaking or friend's challenges.
  • A friend list to add or remove connected friends. Options implemented include adding/removing your friend from the list, spectating their match, sending them direct messages, challenging them to a game.
  • A chat which enables users to create chat public/private chat rooms and much more...
  • A guild panel: a page to list all the guilds on the website. Users can create guilds, join/leave guilds and earn points for their guild. Each guild is displayed with their significant figures, their members, their owner. The page is customized for guild owners to accept/refuse user invitations to join the guild.
  • A user ranking panel: a page to represent to current users ranking, and to access each users profile info as well as matches info.

Some screenshots

Game Pages

Screenshot 2021-07-17 at 11 32 42

Screenshot 2021-07-17 at 11 35 58

Screenshot 2021-07-17 at 11 36 02

Screenshot 2021-07-17 at 11 36 13

Screenshot 2021-07-17 at 11 36 36

Chat Pages

Screenshot 2021-07-17 at 11 38 54

Users Ranking Pages

Screenshot 2021-07-17 at 11 32 34

Screenshot 2021-07-17 at 11 35 21

Screenshot 2021-07-17 at 11 35 07

Guild Pages

Screenshot 2021-07-17 at 11 33 02

Screenshot 2021-07-17 at 11 33 08