2.2 KiB
group organisation :
- choose a secondary browser
- choose solution to rootless mode (VM, rebuild, unique root uid)
- choose 2fa method : texto ? Google Authentication ?
- when chat-room owner leaves what happens ?
- can chat-room administrators ban and mute other administrators ?
- game technologie (canvas ?)
instructions :
global instructions :
-
backend in NestJs
-
frontend any TypeScript framework
-
latest stable version of any library or framework used
-
use only PostgreSQL db
-
single page application
-
navigator back and forward button working
-
works on last Chrome and another browser
-
launch with "docker-compose up --build", put in sgoinfre, in rootless mode
-
can't use bind-mount volumes :
- docker in VM ?
- rebuild after changes ?
- craft own imags with root as unique UID
security concerns :
-
hash every passwords in db
-
protection against SQL injections
-
server-side validation of users inputs
-
store credentials in local .env git-ignored
user account :
-
login with 42 intranet OAuth system
-
user can choose name, avatar, 2fa (ex texto or Google Authenticator)
-
display user name on site
-
user default avatar if not chosen
-
user can add friends, and see status (online/offline, in game, ...)
-
display stats on user profile (wins, losses, ladderm levelm achievements, ...)
-
public match history (lvl games, ladder, ...)
chat :
-
can create chat-rooms (public/private, password protected)
-
send direct messages
-
block other users
-
creators of chat-room are owners, untill they leave
-
chat-room owner can set, change, remove password
-
chat-room owner is administrator and can set other administrators
-
administrators can ban or mute for a time other users
-
send game invitation in chat
-
view user profiles from chat
game :
-
play pong with others on website
-
matchmaking system : join a queue untill automatic match
-
faithfull to original pong (1972)
-
customs options (powers up, multiple maps, ...), with a default one
-
reponsive
-
can watch other matchs