mirror of
https://github.com/iv-org/invidious.git
synced 2025-08-21 10:49:02 -05:00
This commit completes the API-only mode feature that allows Invidious to be built and run without GUI/frontend components, significantly reducing the binary size and dependencies. Changes include: - Add conditional compilation flags throughout the codebase to exclude frontend-specific code - Create stub implementations for database operations in API-only mode - Update Docker configurations to support API-only builds - Refactor require statements for better modularity - Add DummyDB and stub types for API-only mode - Ensure all routes work correctly without frontend dependencies The API-only mode can be enabled by: - Using -Dapi_only flag during compilation - Setting API_ONLY=1 when using make - Using --build-arg api_only=1 with Docker builds This is particularly useful for: - Microservice architectures where only the API is needed - Reducing resource usage in containerized environments - Creating lightweight API servers for mobile/desktop applications