# Luminate Luminate is a modern and robust Jellyfin client for the Linux desktop. It aims to provide an elegant and immersive browsing experience for any Jellyfin server with features rivaling that of the default Jellyfin Media Player, all while feeling right at home in your Linux desktop environment. ## Building ### Linux (Native) ```bash swift build swift run ``` Requires `libadwaita-devel` (Fedora) or `libadwaita` (Ubuntu/Debian) and the Swift 6 toolchain. ### Flatpak ```bash flatpak-builder --force-clean build-dir dev.bscubed.Luminate.json flatpak-builder --run build-dir dev.bscubed.Luminate.json Luminate ``` ### macOS (Development) ```bash brew install libadwaita swift build swift run ``` macOS builds are supported for development but the target platform is Linux/Flatpak. ### Release Build ```bash swift build -c release ``` ## Contributing Contributions to Luminate are welcome! Refer to the project roadmap below to get an idea of what's currently being worked on before jumping in if you'd like, or you can check out the [current issues](https://git.bscubed.dev/echo/Luminate/issues) for something to tackle. ## Project Roadmap ### Implemented Features - Server login with Jellyfin authentication - Persistent session storage (auto-login across restarts) - Home screen with Continue Watching, Next Up, and Recently Added rows - Library grid browsing with folder navigation - Movie detail view (backdrop, poster, metadata, cast, similar items) - TV show detail view with season picker and episode list - Search with debounced text input and result display - Playback recording (start/progress/stop reporting to server) - Favorites (toggle favorite on movie detail) - Mark played/unplayed - Image caching (memory + disk) - WebSocket client for server events - Dependency injection system - Stack-based navigation - Initial localization support (en/de) ### In Progress - Video player widget (planned mpv + GtkGLArea integration) - Connecting detail views to navigation stack - Migrating library views to `@Injected` dependency injection ### Planned - Real video playback with seeking and progress tracking - Unified search integration - Continue Watching resume from home screen - Keyboard shortcut improvements - Error handling UI for failed network requests - Unit and UI testing - CI/CD pipeline - Flatpak publishing on Flathub - Multi-user support - Offline/download support - Quick login ## License GPL-3.0