Major module: Standard user management, authentication, users across tournaments.
Interested: Dardan, Allu, Linus, Henriika, Joonas
Dependencies: Database
Allu and Dardan will design a front end for this. Linus and Henriika will do a database that has rest api endpoints(see more in database part). We will have a flow webserver, that serves the initial html file, aka the front-end made by allu and dardan. Then all connections/request go to the flow, and the flow makes appropriate request to the database to fetch the data required for the response.
Major module: Remote players
Interested: Joonas
Dependencies: Server side pong
Websocket based client-server-client communication.
Major module: Multiple players
Interested: Joonas
Dependencies: Remote players
2v2 and/or up to 4 players free for all, one player on each side of the rectangle.
Major module: Live Chat.
Interested: Dardan Allu
Dependencies: Remote players, Database, User management.
To be added by Dardan and Allu
Major module: Introduce an AI Opponent.
Intrested: Dardan, Allu, Joonas
Dependencies: Multiple players module.
Basically an ai player. Dardan and Allu choose an algorithm and implement it to make a ai opponent, which wins sometimes.
Major module: Implement Two-Factor Authentication (2FA) and JWT. ???
Interested: Not really, Allu hates this
Dependencies: Database, Usermanagement.
Major module: Infrastructure Setup with ELK (Elasticsearch, Logstash, Kibana) for Log Management. ???
Interested: Linus
Dependencies: Microservices
Configure ELK to collect benchmark and log data from the other services, and make the data searchable with correct tags. Aka container a will have tag container-a, error log will have tag error.
Major module: Designing the Backend as Microservices.
Interested: Everybody related with backend
Dependencies: Nothing
Everything just has to be a micro service. No large chunks of functionality. The micro service's communicate via rest apis made with Django. Everything is made with Django/Python in the back.
Major module: Implementing Advanced 3D Techniques ???
Interested: Joonas
Dependencies:
Just use three.js and webgl to do fancy graphics effects for the 2d game.
Major module: Replacing Basic Pong with Server-Side Pong and Implementing an API
Interested: Linus, Henriika, Joonas
Dependencies:
The calculations of positions of the paddles and ball happen in server side not the web app. Communication through web-sockets.
Major module: Enabling Pong Gameplay via CLI against Web Users with API Integration. ???
Interested: Linus, Henriika
Dependencies: Server side pong
Make a terminal client. Likely in Python.
Minor module: Use a database for the backend -and more.
Interested: Linus, Henriika
Dependencies: None
Setup a database postgresql and make a rest api for it to enable data exchange.
Minor module: Game Customisation Options ???
Interested: Joonas
Dependencies: None, maybe some. Add later
Make extra features for the base game, maps, power-ups and such:
add option to set ball speed when creating a game: slow, normal, fast, megafast. and increasing speed
select how the ball bounces back: randomly, or based on where it hits the paddle
Minor module: User and Game Stats Dashboards.
Interested: Dardan, Allu
Dependencies: User management, database
Make an html file that has these. Later will be merged with the other html file.
Minor module: Monitoring system. ???
Interested: Linus
Dependencies: Elasticsearch
A monitoring GUI for elasticsearch ELK thingy.
Minor module: Support on all devices. ???
Interested: Joonas
Dependencies: None
Get it to work on phone
Minor module: Expanding Browser Compatibility.
Interested: Joonas
Dependencies: None
Make it work on another browser than chrome, in addition to chrome.
Minor module: Server-Side Rendering (SSR) Integration. ???
Just a first plan.
Major module: Use a Framework as backend.
Major module: Standard user management, authentication, users across tournaments.
Major module: Remote players
Major module: Multiple players
Major module: Live Chat.
Major module: Introduce an AI Opponent.
Major module: Implement Two-Factor Authentication (2FA) and JWT. ???
Major module: Infrastructure Setup with ELK (Elasticsearch, Logstash, Kibana) for Log Management. ???
Major module: Designing the Backend as Microservices.
Major module: Implementing Advanced 3D Techniques ???
Major module: Replacing Basic Pong with Server-Side Pong and Implementing an API
Major module: Enabling Pong Gameplay via CLI against Web Users with API Integration. ???
Minor module: Use a database for the backend -and more.
Minor module: Game Customisation Options ???
Minor module: User and Game Stats Dashboards.
Minor module: Monitoring system. ???
Minor module: Support on all devices. ???
Minor module: Expanding Browser Compatibility.
Minor module: Server-Side Rendering (SSR) Integration. ???
GAMES ORGANIZATION
Remote:
Local:
Chat: webhooks
(〃 ̄ω ̄〃)ゞ https://en.wikipedia.org/wiki/Webhook <---- go there and read blyat