- FastAPI backend with async SQLite session storage - Matrix homeserver authentication (login/logout/session validation via whoami) - Server-side proxy for Radarr, Sonarr, and Lidarr search & add APIs - Fire-and-forget Matrix audit log bot for request tracking - Rate-limited login endpoint (5 req/min per IP via slowapi) - Single-page Alpine.js frontend with dark theme, media type tabs, search grid - Dockerfile for single-container deployment - Secure session cookies (httponly, samesite=strict, secure) https://claude.ai/code/session_018iMt5qm4j9bk8wzytLC3E6
30 lines
718 B
Plaintext
30 lines
718 B
Plaintext
# Matrix homeserver
|
|
MATRIX_HOMESERVER_URL=https://matrix.example.com
|
|
|
|
# Matrix audit bot (pre-authenticated)
|
|
MATRIX_AUDIT_ROOM_ID=!roomid:example.com
|
|
MATRIX_BOT_USER_ID=@bot:example.com
|
|
MATRIX_BOT_ACCESS_TOKEN=syt_bot_token_here
|
|
|
|
# Radarr
|
|
RADARR_URL=https://radarr.example.com
|
|
RADARR_API_KEY=your_radarr_api_key
|
|
RADARR_QUALITY_PROFILE_ID=1
|
|
RADARR_ROOT_FOLDER=/movies
|
|
|
|
# Sonarr
|
|
SONARR_URL=https://sonarr.example.com
|
|
SONARR_API_KEY=your_sonarr_api_key
|
|
SONARR_QUALITY_PROFILE_ID=1
|
|
SONARR_ROOT_FOLDER=/tv
|
|
|
|
# Lidarr
|
|
LIDARR_URL=https://lidarr.example.com
|
|
LIDARR_API_KEY=your_lidarr_api_key
|
|
LIDARR_QUALITY_PROFILE_ID=1
|
|
LIDARR_ROOT_FOLDER=/music
|
|
|
|
# App
|
|
SESSION_SECRET_KEY=change-me-to-a-random-secret
|
|
DATABASE_PATH=bellhop.db
|