Structure:
1. Backend/API: GraphQL or REST in Go. I would lean more towards GraphQL
since I am currently working with that and maybe you can learn something
as well. Would use PostgreSQL as a database. Talks to my future
faceit.xenrox.net API to get the Faceit elo.
2. Teamspeak bot in javascript: Similar to the old source [1] but uses
the API now.
3. Frontend in Vue, React or Next.js.
Feature ideas:
- Invite system instead of free for all (how to implement ts3
registration?)
[1]: https://git.xenrox.net/~xenrox/10man-ts3-old
For match-end results we have two options:
1. Let an admin enter match results
2. Write an own sourcemod plugin
I would suggest we use the first option at the beginning or simply don't
modify the elo at all, until the system becomes more mature.