Skip to content
This repository has been archived by the owner on Nov 23, 2022. It is now read-only.
DoomDuck edited this page Jul 17, 2022 · 6 revisions

Welcome to the transcendence wiki!

The project must:

General

  • Use nestjs
  • Have frontend built with a Typescript Framework
  • Use every library's lastest stable version
  • Use a PostgreSQL database and no other
  • Use a single page application with working back and forward browser buttons
  • Work on the lastest stable Chrome, Firefox & Safari
  • Not emit any error or warning
  • Launched by a single $ docker-compose up --build

Security

  • Encrypt every password
  • Server must be safe from SQL injections
  • Server-side verify user input and forms
  • Credentials (API keys, etc..) must be in a gitignored .env file

User Account

  • Use 42's OAuth login system
  • Provide each user:
    • A unique username
    • A replaceable default avatar
    • Optional 2-factor authentification
    • A friend's list
    • Stats (wins/losses, achievements...) visible on user profile
  • Let users see friend's status
  • A ranking system
  • Have a match history visible by every user (with 1v1s, ladder,...)

Chat

  • Provide each user the ability to:
    • Create public/private channels
    • Send direct messages
    • Block users
    • Manage owned channels with:
      • An access password
      • Set users as administrators (who can ban and mute with timeout)
    • Invite people to play in chat
    • Access user profiles in chat

Game

  • Have live Pong games
  • Have a match making system (queue)
  • Rendered in 2D or 3D (potentially on canvas)
  • Provide customization options (power-ups, maps...) or play the original
  • Be responsive
  • Let users spectate live games
Clone this wiki locally