pub fn build_router(state: Arc<AppState>) -> RouterExpand description
Build the router with internal and public route groups.
Internal routes (under /internal/): POST /internal/file – multipart file store POST /internal/file/stream/:id/:filename – streaming file store DELETE /internal/file/:id – delete a file POST /internal/file/:id/rename – rename a file
Public routes: GET /f/:id – serve a file with ETag caching GET /api/health – health check GET /api/storage – storage metrics
Internal routes are protected by the require_api_key middleware.