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), andcore::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
RommClientandConfig. - run_
interactive - Load config, run first-time setup in the terminal if
API_BASE_URLis missing, then start the TUI.