# --- Core --- # Postgres connection string. Matches docker-compose.yml defaults. DATABASE_URL=postgresql://reforger:reforger@127.0.0.1:5433/reforger_panel # Random string, at least 32 characters. Used to sign OAuth state. SESSION_SECRET=change-me-to-a-long-random-string-1234 # API listen port and the origin the web app is served from (CORS + OAuth redirects). PORT=3001 WEB_ORIGIN=http://localhost:5173 NODE_ENV=development # --- Discord OAuth --- # Create an application at https://discord.com/developers/applications, # add the redirect URI below under OAuth2 -> Redirects. DISCORD_CLIENT_ID= DISCORD_CLIENT_SECRET= DISCORD_REDIRECT_URI=http://localhost:3001/api/auth/discord/callback # Your Discord user ID. This account is auto-assigned the "owner" role at login. OWNER_DISCORD_ID= # Local development only: set to true to enable POST /api/auth/dev-login, # which signs you in as a fake owner without Discord credentials. # Hard-disabled when NODE_ENV=production. DEV_AUTH_BYPASS=false # --- Reforger Workshop API (backend-only, never called from the browser) --- REFORGER_WORKSHOP_API_BASE_URL=https://api.reforgermods.net # --- Pterodactyl (Client API, not Application API) --- # Leave USE_MOCK_PTERODACTYL=true to run everything locally with mock data. PTERODACTYL_BASE_URL= # Create under Account Settings -> API Credentials in Pterodactyl. PTERODACTYL_CLIENT_API_KEY= # The short server identifier from the Pterodactyl server URL, e.g. "1a2b3c4d". PTERODACTYL_SERVER_ID= USE_MOCK_PTERODACTYL=true # --- Reforger config import --- # Path of the server's config.json in the Pterodactyl file manager. Imported # read-only to populate the Configuration pages, server name, and max players. REFORGER_CONFIG_PATH=/config.json REFORGER_CONFIG_SYNC_INTERVAL_SECONDS=300 # --- Reforger log ingestion --- # Recommended: set REFORGER_LOG_DIRECTORY (e.g. /profile/logs) and the panel # follows the newest logs_* dated subfolder automatically on every sync. # REFORGER_ADMIN_LOG_PATH pins one exact file and overrides discovery. REFORGER_ADMIN_LOG_PATH= REFORGER_LOG_DIRECTORY= REFORGER_LOG_FILE_PATTERN=console.log REFORGER_LOG_POLL_INTERVAL_SECONDS=20 REFORGER_LOG_MAX_DOWNLOAD_BYTES=2097152 REFORGER_LOG_STALE_AFTER_SECONDS=90