A terminal-based client for Jellyfin that lets you browse your media library and play videos via mpv. Inspired by jftui.
- Uses your mpv config!
- Resumes playback!
- Tracks playback progress and updates jellyfin!
- Automatic segment (intro, etc.) skipping!
- No mouse required!
Download the latest pre-built binary for your platform from the releases page.
go install github.com/hacel/jfsh@latest
-
Start jfsh
jfsh
-
Login
On first launch, you'll be prompted to enter:
- Host: e.g.,
http://localhost:8096
- Username
- Password
- Host: e.g.,
-
Play Media
- Select an item and press Enter or Space to play it.
mpv
will launch and begin streaming.
-
Quit
- Press
q
at any time to exit jfsh.
- Press
By default, the configuration file is stored in $XDG_CONFIG_HOME/jfsh/jfsh.yaml
. If $XDG_CONFIG_HOME
is not set it defaults to:
- Linux:
~/.config/jfsh/jfsh.yaml
- macOS:
~/Library/Application Support/jfsh/jfsh.yaml
- Windows:
%APPDATA%/jfsh/jfsh.yaml
host: http://localhost:8096
username: me
password: hunter2
device: mycomputer # Device name to report to jellyfin (default: hostname)
skip_segments: # Segments to automatically skip (default: [])
- Recap
- Preview
- Intro
- Outro
By default, no segments are automatically skipped. To enable skipping segments you must add skip_segments
to the configuration file. Possible values for skip_segments
are the segment types in Jellyfin which are: Unknown
, Commercial
, Preview
, Recap
, Outro
and Intro
.
- Configuration through TUI
- Complete library browsing
- Sorting
- Better search: Filter by media type, watched status, and metadata