-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rhythm Cafe V3 Planning #69
Comments
DatabaseAll info in RCV3 uses a single SQLite database. V2 has a split system (orchard.db and status.db), V3 will just have one SQLite database for everything. Each individual API server will have its own copy of the database, but only the primary server will be writable. Reasoning:
Schema changes:
erDiagram
Level {
string rdlevel_hash
}
Status {
string alias
}
User {
string id
}
Status |o -- || Level : has
Level |o -- o| Level : successor
Status }o -- || User : posts
|
API ServerAn API server serves
|
Peer ReviewPR will use an issue-tracking system. When a level is added to the primary database, it creates a issue in the issue tracking system for the level. The issue can be closed with a tag to either approve/nonrefer the level. A bot observes when this happens and calls the appropriate webhooks. Investigation for what system to use is ongoing. |
Frontend and Admin interfaceThe Frontend and Admin interface are probably the same thing. The Admin interface is hidden unless you're logged in with Discord and you have the correct roles. Roles are defined in Discord and fetched via the Discord API. I'll probably use a fancy SSR framework for the frontend, utilising existing components whereever possible. Research ongoing. Frontend:
Admin interface:
|
v1 is the original google sheet
v2 is what we have now. After GAE started rate limiting my google sheet I had to quickly move off it. So we get what we have now, but the system won't be appropriate for a more dynamic level system.
v3...??
Design Goals
The text was updated successfully, but these errors were encountered: