# Feishin — Modern Self-Hosted Music Player > A modern, feature-rich music player client for self-hosted music servers like Navidrome and Jellyfin with album art, lyrics, and gapless playback. ## Install Save as a script file and run: # Feishin — Modern Self-Hosted Music Player ## Quick Use ```bash # Download the latest release for your platform from GitHub Releases # Or use Docker for the web version: docker run -d -p 9180:9180 --name feishin ghcr.io/jeffvli/feishin:latest ``` ## Introduction Feishin is a modern music player designed for self-hosted music servers. It connects to Navidrome, Jellyfin, and other Subsonic-compatible backends to provide a polished listening experience with features like gapless playback, synchronized lyrics, and smart playlists across desktop and web platforms. ## What Feishin Does - Connects to Navidrome, Jellyfin, and Subsonic-compatible music servers - Provides gapless playback with crossfade support for seamless listening - Displays synchronized and plain-text lyrics from embedded metadata or external sources - Supports smart playlists with rule-based filtering (genre, year, play count, etc.) - Offers both a native desktop app (Electron) and a web-based player ## Architecture Overview Feishin is built with React and Electron, communicating with music servers via the Subsonic API or Jellyfin API. Audio playback uses a custom player engine supporting gapless transitions and audio normalization. The app maintains a local cache for album art and metadata to reduce server load and improve responsiveness. ## Self-Hosting & Configuration - Download pre-built binaries for Windows, macOS, or Linux desktop - Alternatively run the web version via Docker for browser-based access - Connect to any Navidrome, Jellyfin, or Subsonic-compatible server - Configure audio output device, crossfade duration, and replay gain - Supports multiple server connections with quick switching ## Key Features - Gapless playback and crossfade for uninterrupted listening sessions - Synchronized lyrics display with karaoke-style highlighting - Scrobbling to Last.fm and ListenBrainz for play tracking - Keyboard shortcuts and media key support for efficient control - Customizable themes with dark mode and accent color options ## Comparison with Similar Tools - **Navidrome web UI** — basic built-in player; Feishin offers richer features and desktop integration - **Plexamp** — requires Plex subscription; Feishin works with free Navidrome/Jellyfin - **Sonixd** — predecessor project now archived; Feishin is the active successor - **Sublime Music** — Linux-only GTK client; Feishin is cross-platform - **Finamp** — Jellyfin-only mobile client; Feishin covers desktop and web with multi-server support ## FAQ **Q: Which music servers does Feishin support?** A: Navidrome, Jellyfin, and any server implementing the Subsonic/OpenSubsonic API. **Q: Does Feishin support offline playback?** A: The desktop app can cache tracks for offline listening when configured. **Q: Can I use Feishin on my phone?** A: The web version works on mobile browsers. For native mobile apps, Finamp (Jellyfin) or Substreamer (Subsonic) are recommended. **Q: Is there scrobbling support?** A: Yes, Feishin supports scrobbling to Last.fm and ListenBrainz directly from the client. ## Sources - https://github.com/jeffvli/feishin - https://feishin.vercel.app --- Source: https://tokrepo.com/en/workflows/asset-3d725e5c Author: Script Depot