Demo mode
Drift-prevention: This Starlight page is the canonical docs-site version. The legacy
docs/*.mdpath now points here instead of carrying a second copy.
Demo mode is an optional, feature-gated way to explore Ferrex without real media. The server generates a synthetic media tree and provisions a demo admin user.
Requirements
Section titled “Requirements”- Build the server with the
demofeature. TMDB_API_KEYmust be set (demo seeding calls TMDB).
Server (demo build):
cargo run -p ferrex-server --features demo -- --demoOr via env:
FERREX_DEMO_MODE=1 cargo run -p ferrex-server --features demoPlayer conveniences are also behind the demo feature (optional):
cargo run -p ferrex-player --features demo -- --demoDefaults / Overrides
Section titled “Defaults / Overrides”- Demo root:
FERREX_DEMO_ROOT(defaults to<cache_root>/demo-mediaif unset). - Demo database:
ferrex_demo(override viaDEMO_DATABASE_NAME). - Demo credentials:
demo/demodemo(override viaFERREX_DEMO_USERNAME,FERREX_DEMO_PASSWORD). - Size shortcuts:
FERREX_DEMO_MOVIE_COUNT,FERREX_DEMO_SERIES_COUNT(advanced:FERREX_DEMO_OPTIONSJSON).
Admin API (requires admin auth)
Section titled “Admin API (requires admin auth)”GET /api/v1/admin/demo/statusPOST /api/v1/admin/demo/resetPOST /api/v1/admin/demo/resize
Caveats
Section titled “Caveats”- Demo files are zero-byte placeholders; playback is not the goal.
- Demo mode intentionally isolates state (filesystem + DB); do not enable it on a real media dataset.