No description
Find a file
Simhadri Saratchandra 31a0fccbf3 feat: add favorite and watched toggle for library items
- Add 'f' key to toggle favorite status on selected item
- Add 'w' key to toggle watched/play status on selected item
- Render ★ (favorite) and ✓ (played) badges on poster cells
- Add set_favorite and mark_played/mark_unplayed API methods
- Update help text with new keybindings
2026-07-29 10:28:00 +05:30
crates/jellyfin-client feat: add favorite and watched toggle for library items 2026-07-29 10:28:00 +05:30
src feat: add favorite and watched toggle for library items 2026-07-29 10:28:00 +05:30
.gitignore feat: implement Jellyfin TUI client 2026-01-05 01:09:36 +05:30
AGENTS.md feat: pass external subtitle URLs to mpv and add AGENTS.md 2026-05-25 18:20:25 +05:30
Cargo.lock feat(ui): Netflix-style poster carousels with inline thumbnails 2026-05-25 18:57:52 +05:30
Cargo.toml feat(ui): Netflix-style poster carousels with inline thumbnails 2026-05-25 18:57:52 +05:30
README.md docs: add README 2026-01-05 01:14:05 +05:30

Jellytui

A terminal UI client for Jellyfin written in Rust.

Features

  • Browse libraries and navigate folders
  • Search across all media
  • Play with MPV (with playback sync)
  • Resume from last position
  • Download media files

Requirements

  • Rust 1.85+ (2024 edition)
  • MPV (for playback)
  • A Jellyfin server

Installation

cargo install --path .

Or build from source:

cargo build --release
./target/release/jellytui

Usage

jellytui

On first run, enter your Jellyfin server URL and credentials. Config is saved to ~/.config/jellytui/config.toml.

Keybindings

Key Action
j / Move down
k / Move up
Enter / l Open / Play
Esc / h Go back
/ or s Search
d Toggle downloads panel
D Download selected item
r Refresh
q Quit

Downloads

Files are saved to ~/Downloads/jellytui/.

Playback Sync

Playback position is synced to Jellyfin:

  • Resume from where you left off
  • Progress reported every 5 seconds
  • Auto-marks as played at 90%

License

MIT