zfin/docs/reference/tui.md
Emil Lerch 74fc219afd
All checks were successful
Generic zig build / build (push) Successful in 5m48s
Generic zig build / publish-macos (push) Successful in 11s
Generic zig build / deploy (push) Successful in 23s
add docs/guides
2026-06-22 14:53:53 -07:00

76 lines
4 KiB
Markdown

# The interactive TUI
```bash
zfin i # or: zfin interactive
```
The TUI is a multi-tab terminal interface over the same engine and data
files as the CLI. With no arguments it auto-loads `portfolio.srf` and
opens on the Portfolio tab; `zfin i -s AAPL` opens on the Quote tab for
a symbol. See [`zfin interactive`](cli/interactive.md) for launch flags.
## Tabs
Nine tabs, in order. Some show your whole portfolio; others show the
currently-selected symbol.
| Tab | Scope | Shows |
|-----------------|-----------|--------------------------------------------------------------------------------------------------------|
| **Portfolio** | portfolio | Positions, valuations, cash, watchlist (like [`portfolio`](cli/portfolio.md)). |
| **Analysis** | portfolio | Allocation breakdowns and umbrella exposure (like [`analysis`](cli/analysis.md)). |
| **Review** | portfolio | Per-holding performance/risk dashboard with findings (like [`review`](cli/review.md)). |
| **Projections** | portfolio | Percentile bands, safe withdrawal, and the actuals overlay (like [`projections`](cli/projections.md)). |
| **History** | portfolio | Portfolio-value timeline from snapshots (like [`history`](cli/history.md)). |
| **Quote** | symbol | Latest price and chart for the selected symbol (like [`quote`](cli/quote.md)). |
| **Performance** | symbol | Trailing returns and risk metrics for the symbol (like [`perf`](cli/perf.md)). |
| **Earnings** | symbol | Earnings history and upcoming events (like [`earnings`](cli/earnings.md)). |
| **Options** | symbol | Options chain for the symbol (like [`options`](cli/options.md)). |
The symbol-scoped tabs follow a single "current symbol"; change it from
the Portfolio tab (select a holding) or by launching with `-s`.
## Charts
Tabs with charts render high-fidelity **Kitty graphics** when your
terminal supports them, falling back to braille otherwise. Force a mode
with `--chart auto|braille|WxH`. The Projections tab is the
highest-fidelity surface for the actuals overlay and the
convergence/return-backtest views.
## Default keybindings
Press `?` any time for the in-app overlay (it always reflects your
current bindings). The global defaults:
| Key(s) | Action |
|----------------------------------------------|--------------------------------|
| `q`, `Ctrl-C` | Quit |
| `r`, `F5` | Refresh the current tab's data |
| `l` / `right` / `tab` | Next tab |
| `h` / `left` / `shift+tab` | Previous tab |
| `1`-`8` | Jump to a tab by number |
| `j` / `down`, `k` / `up` | Move the selection |
| `g` / `G` | Jump to top / bottom |
| `Ctrl-d` / `Ctrl-u` | Half-page down / up |
| `page_down` / `Ctrl-f`, `page_up` / `Ctrl-b` | Page down / up |
Individual tabs add their own actions (e.g. the Projections tab's `d`
to set an as-of date and `o` to toggle the overlay). The `?` overlay
and `zfin i --default-keys` list every binding, global and tab-scoped.
## Customizing
Both keys and colors are configurable via files in `~/.config/zfin/`:
```bash
zfin i --default-keys > ~/.config/zfin/keys.srf
zfin i --default-theme > ~/.config/zfin/theme.srf
```
See [Customize the TUI](../guides/customize-the-tui.md), the
[`keys.srf` reference](config/keys-srf.md), and the
[`theme.srf` reference](config/theme-srf.md).
---
[Documentation home](../README.md)