Authentication
Login, registration, OAuth, and two-factor authentication.
Registration
Users register at /register with the following details:
- Username (3-20 characters, alphanumeric + underscores)
- Email address
- Password (8+ characters)
- Cloudflare Turnstile CAPTCHA
After registration, you'll receive a verification email with a 6-digit code valid for 10 minutes.
Login
Standard login at /login with email + password. Failed attempts are tracked and locked after 5 failures for security.
Two-Factor Authentication (2FA)
After login, if 2FA is enabled, you must enter a 6-digit code sent to your email. Codes expire after 5 minutes.
Go to Profile → Security
Open your account security settings
Click "Enable Two-Factor Authentication"
Start the 2FA setup process
Enter the code sent to your email
Verify your email to complete setup
Save your recovery codes
Store them securely for emergency access
Recovery Codes
When 2FA is enabled, 10 recovery codes are generated. Each can be used once to bypass 2FA. Store them in a safe place.
OAuth Login
Discord
Click "Login with Discord"
Choose Discord as your login method
Authorize the app on Discord
Grant permission to access your Discord profile
Account is linked automatically
Your account is created or linked
Click "Login with Google"
Choose Google as your login method
Select your Google account
Choose which Google account to use
Account is linked automatically
Your account is created or linked
OAuth accounts are linked to existing accounts if the email matches. Otherwise, a new account is created automatically.
Remember Me
The "Remember Me" checkbox extends the session to 30 days instead of the default 30-minute inactivity timeout.
Device Management
You can view and revoke active sessions from Profile → Security. Each session shows:
- Device and browser information
- IP address and location
- Last activity time
- Session type (regular, 2FA, OAuth)
Security tip: Revoke any sessions you don't recognize immediately. This will log out that device.
API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/login | GET/POST | Login page |
/register | GET/POST | Registration page |
/verify-email | GET/POST | Email verification |
/verify-2fa | GET/POST | 2FA verification |
/login/discord | GET | Discord OAuth login |
/login/google | GET | Google OAuth login |
/logout | GET | Logout |
/forgot-password | GET/POST | Password reset request |
/reset-password/<token> | GET/POST | Password reset |