project-nomad/admin/app
Chris Sherwood 3b26f3cf1a feat(content): add custom ZIM library sources with pre-seeded mirrors
Users reported slow download speeds from the default Kiwix CDN. This adds
the ability to browse and download ZIM files from alternative Kiwix mirrors
or self-hosted repositories, all through the GUI.

- Add "Custom Libraries" button next to "Browse the Kiwix Library"
- Source dropdown to switch between Default (Kiwix) and custom libraries
- Browsable directory structure with breadcrumb navigation
- 5 pre-seeded official Kiwix mirrors (US, DE, DK, UK, Global CDN)
- Built-in mirrors protected from deletion
- Downloads use existing pipeline (progress, cancel, Kiwix restart)
- Source selection persists across page loads via localStorage
- Scrollable directory browser (600px max) with sticky header
- SSRF protection on all custom library URLs

Closes #576

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 20:31:58 -07:00
..
controllers feat(content): add custom ZIM library sources with pre-seeded mirrors 2026-03-29 20:31:58 -07:00
exceptions fix(Docs): documentation renderer fixes 2025-12-23 16:00:33 -08:00
jobs fix(ai): surface model download errors and prevent silent retry loops 2026-03-25 16:30:35 -07:00
middleware feat: background job overhaul with bullmq 2025-12-06 23:59:01 -08:00
models feat(content): add custom ZIM library sources with pre-seeded mirrors 2026-03-29 20:31:58 -07:00
services feat(content): add custom ZIM library sources with pre-seeded mirrors 2026-03-29 20:31:58 -07:00
utils fix(disk): correct storage display by fixing device matching and dedup mount entries 2026-03-20 11:46:10 -07:00
validators feat(content): add custom ZIM library sources with pre-seeded mirrors 2026-03-29 20:31:58 -07:00