Terminal UI

TUI: Native Terminal Product Interface

LoFiBox TUI is designed for SSH, Linux desktop terminals, headless servers, small Linux devices, and developer/creator workflows.

Launch Modes

lofibox tui
lofibox tui dashboard
lofibox tui now
lofibox tui lyrics
lofibox tui spectrum
lofibox tui queue
lofibox tui eq
lofibox-tui --theme amber --charset unicode

Dashboard

Dashboard is organized as Header / Now Playing / Progress / Spectrum + Lyrics + Queue / Source + EQ + Diagnostics / Footer. It reads runtime snapshots and event streams; it does not access the audio backend, lyrics provider, or library scanner directly.

LoFiBox TUI Dashboard
Dashboard: Now Playing, progress, spectrum, lyrics, queue, and source status.

Lyrics

Lyrics mode focuses on scrolling lyrics. Synchronized lyrics highlight the current line, while plain lyrics fill the visible window. When lyrics are missing, it shows embedded, local .lrc, and online-provider source status.

LoFiBox TUI Lyrics
Lyrics: current-line highlighting for SSH sessions or a dedicated lyrics window.

Spectrum

Spectrum mode uses the runtime visualization projection. The default display has 10 bands and can expand to 16/32 bands, bars, waveform, VU meter, peak hold, and decay.

LoFiBox TUI Spectrum
Spectrum: runtime supplies spectrum frames during playback; TUI only renders them.

Queue

Queue mode displays the active queue, active index, title, artist, duration, and source label. Selection, jump, delete, and move actions map back to runtime commands.

LoFiBox TUI Queue
Queue: inspect and control the playback queue from the terminal.

Character Sets and Themes

Setting Command Description
Unicode Rich lofibox tui --charset unicode Default mode with box drawing, spectrum blocks, and playback symbols.
ASCII Safe lofibox tui --charset ascii Compatibility mode using + / - / | and # progress bars.
Minimal lofibox tui --charset minimal For very narrow or log-like environments, keeping only core state and necessary prompts.
Themes --theme dark|light|amber|mono --no-color Color is enhancement only; no-color mode must remain fully usable.

Responsive Layouts

TUI switches layout by terminal size and shows an explicit error below 32x8.

Layout Size Focus
Wide>= 100x30Spectrum / Lyrics / Queue in three columns.
Normal>= 80x24Now Playing, progress, Spectrum, Lyrics, Queue sections.
Compact>= 60x16Status, progress, spectrum, current lyric, next track.
Micro>= 40x10Title, time, volume, short spectrum, current lyric.
Tiny>= 32x8Title, time, short spectrum, exit hint.

Keyboard Shortcuts

KeyActionRuntime Mapping
SpacePlay / pausePlaybackToggle
n / pNext / previousQueueStep(+1/-1)
sStopPlaybackStop
Left / RightSeek -5s / +5sPlaybackSeek
eToggle EQEqEnable / EqDisable
RCycle Remix effectAudioEffectCycle
l / v / QLyrics / Spectrum / Queue viewTUI local focus
/Search modeRuntime query
:Command PaletteControlled runtime command, not shell execution
qQuit TUICloses the interface only; does not send stop
Safety boundary: TUI must not execute arbitrary shell commands, read raw credentials, bypass the runtime command bus, scan libraries directly, or call the playback backend directly.