guccho.backend.config.ts) controls how Guccho connects to your private osu! server, database, cache, and other backend services.
Creating Your Configuration
Copy the example configuration file and customize it for your setup:Configuration Structure
Your configuration file should export a default object that satisfies theUserBackendConfig type:
Backend Adapters
The backend adapter to use. This determines which private server implementation Guccho will interface with.Supported adapters:
bancho.py- For bancho.py (gulag) serversppy.sb@bancho.py- For ppy.sb servers (extends bancho.py)
- bancho.py
- ppy.sb@bancho.py
Basic configuration for bancho.py (gulag) servers:Requires:
- MySQL database connection
- Redis (optional, but recommended for sessions)
- Gulag API v1 endpoint
Database Connection
Database connection string (Data Source Name). This is a required field and should be loaded from environment variables.Format: Set in your
mysql://username:password@host:port/database.env file:The
env() function ensures this variable is set - Guccho will not start without it.Redis Configuration
Redis connection URL. Used for session storage and leaderboard caching.Default: Set in your
redis://localhost.env file:Where to store user sessions.Options:
redis- Store sessions in Redis (recommended for production)memory- Store sessions in memory (development only)
Using
memory for sessions means sessions will be lost when the server restarts.Leaderboard Configuration
Source for leaderboard data.Options:
database- Query leaderboards directly from the databaseredis- Use cached leaderboard data from Redis (faster)
API Endpoints
API endpoint configuration for your private server.
Avatar Configuration
Configure where avatar images are stored and served from.
Article Configuration
Configure where article/news content is stored.
Mail Configuration
Email service configuration for sending notifications.
Path Helpers
Theresolve() function from Node.js converts relative paths to absolute paths:
Using
resolve() ensures paths work correctly regardless of where Guccho is started from.Complete Example
Next Steps
UI Configuration
Configure branding, footer links, and UI settings
Environment Variables
Learn about environment variable management