A crypto price and portfolio tracker for the terminal.
- Three tabs -- Markets (top 50), Favourites, Portfolio
- Encrypted storage -- SQLCipher-encrypted local database, password unlock on launch
- Privacy lock -- Auto-locks UI and DB after configurable minutes of inactivity (off/1/5/10/15/30)
- Price charts -- Sparkline graphs with 1D/7D/30D views, supply info, active alerts
- Portfolio tracking -- Add holdings, see total value, P&L and % gain per coin
- Profit & loss -- Auto-records buy price on first add; override with
b - Price alerts -- Set target price above/below; terminal bell + row flash on trigger
- Global market stats -- Total market cap, BTC dominance, Fear & Greed index in the top bar
- Sort columns -- Press
sthen a column key to sort by price, 24h%, mcap, etc. - Filter -- Press
/to fuzzy-filter coins by name or ticker in real time - Mouse support -- Click rows, scroll wheel, click tabs
- 24h range -- High/low columns in the table
- Currency in headers -- Price column shows active currency, e.g.
Price(USD) - Notifications -- Desktop (notify-rust) and/or push (ntfy.sh), configurable in settings
- Custom coins -- Search and add any coin from CoinGecko
- API key support -- Optional CoinGecko Pro / CoinMarketCap keys
- Multi-currency -- USD, EUR, GBP, JPY, AUD, CAD, CHF, CNY, KRW, INR, BRL, BTC, ETH
- 11 color themes -- Dark, dark-blue, dark-green, light, bubblegum, no-color, ...
- Configurable refresh -- Default 60s, minimum 30s
- Error logging -- Errors logged to
~/.config/bags/errors.logwith timestamps - All data stays local -- Nothing leaves your machine
cargo install --path .Requires Rust toolchain. SQLCipher is bundled automatically.
bagsFirst run prompts you to set a password. Subsequent runs unlock with that password.
| Key | Action |
|---|---|
j / k |
Scroll up/down |
PgUp / PgDn |
Page up/down |
g / G |
Jump to top/bottom |
Tab / 1 2 3 |
Switch tabs |
Enter |
Coin detail + chart |
h / l |
Cycle chart view (1D/7D/30D) |
f |
Toggle favourite |
a |
Add/edit holding amount |
d |
Remove holding |
b |
Edit buy-in price (Portfolio) |
A |
Set price alert on selected coin |
/ |
Filter coins by name/ticker |
s |
Sort by column (then r/n/p/1/2/7/v/m) |
c |
Search & add custom coin |
r |
Force refresh |
S |
Settings |
Esc |
Clear filter / close popup / quit |
q |
Quit |
| Mouse | Click rows, scroll wheel, click tabs |
~/.config/bags/config.yaml
refresh_interval_secs: 60
currency: usd
theme: dark
privacy_lock_minutes: 0 # 0 = off, or 1/5/10/15/30- Database:
~/.local/share/bags/bags.db(SQLCipher encrypted) - Config:
~/.config/bags/config.yaml - Error log:
~/.config/bags/errors.log
Press S to open settings. Use j/k to navigate, h/l to cycle options, Enter to edit text fields, s to save.
- Currency -- Cycle through 13 currencies
- Theme -- Live preview while cycling through 11 themes
- CoinGecko API Key -- Optional, for higher rate limits
- CoinMarketCap API Key -- Optional
- Notifications -- none / desktop / ntfy / both
- Ntfy Topic -- Your ntfy.sh topic for push alerts
- Privacy Lock -- Auto-lock after inactivity: off / 1 / 5 / 10 / 15 / 30 minutes
Inspired by cointop.
