A game-agnostic BeatMods replacement.
Running the server is (mostly) easy to do:
- Clone the Repo.
- Create a folder called
storagein the same folder as thesrcfolder. - Create a
config.jsonfile (using the config below) in thestoragedirectory and fill in the values. - Create the directories for mod uploads & mod icons. The defaults are assuming a
storage/uploadsand anstorage/iconsfolder exist. - Run
npm ito install packages. - Run
npm run startto start the server.
{ "auth": { "discord": { "clientId": "id", "clientSecret": "secret" }, "github": { "clientId": "idfk", "clientSecret": "idfk" } }, "database": { "dialect": "sqlite", "url": "./storage/database.sqlite", "username": "user", "password": "password", "alter": true }, "storage" : { "modsDir" : "./storage/uploads", "iconsDir" : "./storage/icons" }, "devmode" : true, "authBypass" : true, "server" : { "port" : 5001, "url" : "http://localhost:5001", "sessionSecret" : "supersecret", "iHateSecurity" : false, "corsOrigins": "*" }, "webhooks": { "enableWebhooks": true, "enablePublicWebhook": false, "loggingUrl": "url", "modLogUrl": "url", "publicUrl" : "url" }, "bot": { "enabled": true, "clientId": "clientid", "token": "token" } }Auth: OAuth2 Info
Database: Supports sqlite and postgres. URL can be replaced with a postgres URL.
Storage: Paths for user uploads
devmode: Enables additional logging
authBypass: Authenticates every request as the built in Server Admin
Server: Hosting info. URL is a url without the / at the end. Used for Swagger and OAuth2 redirects.
Webooks: For logging & approval webhook
Bot: Discord bot for looking up mods and other mayybe fun things