Commit Graph
9 Commits
Author SHA1 Message Date
janisslsmandcodex d4cea55075 Apply rustfmt
Co-Authored-By: codex <[email protected]>
2026-06-12 17:45:45 +03:00
janisslsmandcodex 8c0986161a Allow rescanning media folders
Co-Authored-By: codex <[email protected]>
2026-06-12 17:44:28 +03:00
janisslsmandClaude Opus 4.7 0a026209aa Rename crate from emby-client to emby-tui-client
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-22 17:10:41 +03:00
janisslsmandClaude Opus 4.7 87676ba7ab Store config under emby-tui-client instead of emby-client
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-22 15:50:28 +03:00
janisslsmandClaude Opus 4.7 093b13f03e Add episode queueing picker and configurable mpv video output
Activating an episode now opens a scope picker (episode / season / whole
show) and plays the chosen queue back-to-back in one mpv instance, with
only the first item honoring its resume position. A new mpv `vo` driver
setting (CLI flag, env var, config file, and settings TUI) lets users
opt into terminal-based vos like sixel/kitty/tct, which auto-enable
mpv's terminal input so playback keys still work.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-22 15:46:17 +03:00
janisslsmandClaude Opus 4.7 f0ebb4b9a4 Add default audio/subtitle language config and in-TUI settings editor
* New audio_lang / subtitle_lang fields in config (file, CLI flags, env
  vars). Forwarded to mpv's alang/slang as a comma-separated ISO 639
  priority list, e.g. "jpn,eng".
* New Settings screen (press `s` in the main view) for editing server,
  user, password, and language preferences without leaving the app.
  Credential changes trigger re-authentication against the new endpoint;
  on success the libraries/resume list is refreshed. Everything is
  persisted back to the config file the app loaded from.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-18 02:12:08 +03:00
janisslsmandClaude Opus 4.7 a9495389e8 Add --install-desktop to install a desktop entry
Detects an installed terminal emulator (kitty, alacritty, wezterm, foot,
ghostty, gnome-terminal, konsole, xfce4-terminal, tilix,
x-terminal-emulator, xterm) and bakes an explicit launch command into
the entry, since Terminal=true is unreliable on modern desktops.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-16 22:12:16 +03:00
janisslsmandClaude Opus 4.7 79f3a2e13b Remember last selection when navigating back
Pushed the selected index onto a stack on every drill-down (library →
series → season → episode) and pop it on back so the cursor lands on
the row the user just opened, instead of snapping to row 0. Clamps the
restored index to the current list length to survive a shrunk list.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-16 22:01:02 +03:00
janisslsmandClaude Opus 4.7 af43b21f5d Initial commit: Emby TUI client with libmpv playback
A ratatui-based terminal browser for an Emby server with mpv as the player
backend. Authenticates via /Users/AuthenticateByName, lists libraries and
items, streams via /Videos/{id}/stream, and reports playback progress so
"Continue Watching" stays in sync across clients.

Credentials are read in priority order: CLI flags, env vars
(EMBY_SERVER/EMBY_USER/EMBY_PASSWORD), ./config.toml or
$XDG_CONFIG_HOME/emby-client/config.toml, then an in-TUI login prompt with
an option to persist to config.toml.

Modules: config (CLI + TOML loader), login (TUI prompt), emby (HTTP client
+ progress Reporter), player (libmpv2 wrapper, blocks until file ends),
app (browse state, Continue Watching virtual entry), ui (ratatui frontend).

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-16 21:38:22 +03:00