media-rip/backend/app/routers
xpltd 1592407658 First-run admin setup wizard, password persistence, forced setup gate
- Admin enabled by default (was opt-in via env var)
- New /admin/status (public) and /admin/setup (first-run only) endpoints
- Setup endpoint locked after first use (returns 403)
- Admin password persisted to SQLite config table (survives restarts)
- Change password now persists to DB (was in-memory only)
- Frontend router guard forces /admin redirect until setup is complete
- AdminSetup.vue wizard: username + password + confirm
- Public config exposes admin_enabled/admin_setup_complete for frontend
- TLS warning only fires when password is actually configured
2026-03-21 20:01:13 -05:00
..
__init__.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
admin.py First-run admin setup wizard, password persistence, forced setup gate 2026-03-21 20:01:13 -05:00
cookies.py Docker self-hosting: fix persistence, add data_dir config 2026-03-19 09:56:10 -05:00
downloads.py Fix ruff lint errors: unused imports, E402 import ordering 2026-03-19 07:27:38 -05:00
files.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
formats.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
health.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00
sse.py Fix SSE busy-loop (ping=0), keep curl in image, recover zombie jobs on startup 2026-03-21 17:59:24 -05:00
system.py First-run admin setup wizard, password persistence, forced setup gate 2026-03-21 20:01:13 -05:00
themes.py M001: media.rip() v1.0 — complete application 2026-03-18 20:00:17 -05:00