2.7 KiB
questions :
- 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 ?)
tasks :
luke
- getting started with Javascript
- getting started with Node.js/Nest.js
- pong game solo front-end (canvas ? js ?)
- add multiplayers to Pong with Node.js (without database, accounts, ...)
eric
- getting started with Javascript
- getting started with framework TypeScript front-end (Svelte ?)
- single-page démo, sans back-end
- chat front-end ? (tester avec des messages random locaux)
hugo
- getting started with Javascript
- getting started with Node.js/Nest.js
- getting started with PostgreSQL
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