Skip to main content

Module tui

Module tui 

Source
Expand description

TUI implementation (requires the tui feature). Terminal UI module.

This module contains all ratatui / crossterm code and is responsible purely for presentation and interaction. It talks to the rest of the application through:

  • RommClient (HTTP / data access),
  • core::cache::RomCache (disk-backed ROM cache), and
  • core::download::DownloadManager (background ROM downloads).

Keeping those "service" types UI-agnostic makes it easy to add other frontends (e.g. a GUI) reusing the same core logic.

Modules§

app
Application state and TUI event loop.
keyboard_help
Static keyboard shortcut reference for the help overlay.
openapi_sync
Load the RomM OpenAPI spec at TUI startup: prefer the live server, fall back to cache, then a bundled copy shipped in the binary. Used for save-sync compatibility and server version.
path_picker
Shared filesystem path browser for TUI (directory or file pick).
runtime
Shared terminal session setup for TUI frontends.
screens
Collection of individual TUI screens.
theme
Semantic TUI styling backed by ratatui-themekit presets.
utils

Functions§

run
Launch the TUI when the caller already has a RommClient and Config.
run_interactive
Load config, run first-time setup in the terminal if API_BASE_URL is missing, then start the TUI.