| Crates.io | stonktop |
| lib.rs | stonktop |
| version | 0.1.1 |
| created_at | 2025-12-16 12:31:36.403041+00 |
| updated_at | 2025-12-16 12:52:52.481845+00 |
| description | A top-like terminal UI for monitoring stock and cryptocurrency prices |
| homepage | https://github.com/thomasvincent/stonktop |
| repository | https://github.com/thomasvincent/stonktop |
| max_upload_size | |
| id | 1987637 |
| size | 140,485 |
A top-like terminal UI for monitoring stock and cryptocurrency prices in real-time.
top/htoptop -b)BTC.X or just BTC for BTC-USDSTONKTOP - 8 symbols
3 up 4 down 1 unchanged Updated: 5s ago
SYMBOL NAME PRICE CHANGE CHG% VOLUME MKT CAP
NVDA NVIDIA Corporation $875.28 +12.45 +1.44% 45.2M $2.16T
AAPL Apple Inc. $178.72 +2.31 +1.31% 52.1M $2.78T
BTC-USD Bitcoin USD $43521.00 +521.00 +1.21% 28.5B $852.1B
GOOGL Alphabet Inc. $141.80 +0.95 +0.67% 18.3M $1.76T
MSFT Microsoft Corporation $378.91 -1.23 -0.32% 22.4M $2.81T
ETH-USD Ethereum USD $2245.50 -45.20 -1.97% 12.1B $270.1B
AMZN Amazon.com Inc. $178.25 -3.42 -1.88% 31.2M $1.85T
TSLA Tesla Inc. $248.50 -8.75 -3.40% 98.5M $790.2B
q:quit h:help s:sort r:reverse H:holdings f:fundamentals | Quotes | CHG% ▼ | Iter: 1
cargo install stonktop
If you have cargo-binstall installed, you can install pre-built binaries:
cargo binstall stonktop
Download pre-built binaries from the Releases page.
Available platforms:
git clone https://github.com/thomasvincent/stonktop.git
cd stonktop
cargo build --release
The binary will be at target/release/stonktop.
git clone https://github.com/thomasvincent/stonktop.git
cd stonktop
cargo install --path .
# Watch specific symbols
stonktop -s AAPL,GOOGL,MSFT,BTC-USD
# With crypto shortcuts
stonktop -s AAPL,BTC,ETH,SOL
# Set refresh delay (like top -d)
stonktop -s AAPL,GOOGL -d 10
# Run N iterations then exit (like top -n)
stonktop -s AAPL -n 5
# Batch mode for scripting (like top -b)
stonktop -s AAPL,GOOGL -b
# Secure mode - disable interactive commands
stonktop -s AAPL -S
# Sort by price (descending)
stonktop -s AAPL,GOOGL -o price
# Sort by symbol (ascending)
stonktop -s AAPL,GOOGL -o symbol -r
# Available sort fields: symbol, name, price, change, change-percent, volume, market-cap
# Use specific config file
stonktop -c ~/.config/stonktop/custom.toml
# Or place config at default location:
# - Linux/macOS: ~/.config/stonktop/config.toml
# - Windows: %APPDATA%\stonktop\config.toml
| Option | Short | Description |
|---|---|---|
--symbols |
-s |
Comma-separated list of symbols to watch |
--delay |
-d |
Refresh delay in seconds (default: 5) |
--iterations |
-n |
Number of iterations (0 = infinite) |
--batch |
-b |
Batch mode - non-interactive output |
--secure |
-S |
Secure mode - disable interactive commands |
--config |
-c |
Path to configuration file |
--sort |
-o |
Initial sort field |
--reverse |
-r |
Reverse sort order |
--top |
-t |
Show only top N symbols |
--holdings |
-H |
Show holdings/portfolio view |
--currency |
Display currency (default: USD) | |
--timeout |
API timeout in seconds (default: 10) | |
--verbose |
-v |
Verbose output |
--help |
Show help message | |
--version |
-V |
Show version |
| Key | Action |
|---|---|
q, Esc |
Quit |
h, ? |
Toggle help |
↑, k |
Move up |
↓, j |
Move down |
g, Home |
Go to top |
G, End |
Go to bottom |
PgUp |
Page up |
PgDn |
Page down |
s |
Cycle sort field |
r |
Reverse sort order |
1-7 |
Sort by column |
H |
Toggle holdings view |
f |
Toggle fundamentals |
Space, R |
Force refresh |
Tab |
Cycle symbol groups |
Create a TOML configuration file:
# ~/.config/stonktop/config.toml
[general]
refresh_interval = 5.0
timeout = 10
currency = "USD"
[watchlist]
symbols = [
"AAPL",
"GOOGL",
"MSFT",
"AMZN",
"NVDA",
"BTC-USD",
"ETH-USD",
]
# Portfolio holdings (optional)
[[holdings]]
symbol = "AAPL"
quantity = 100
cost_basis = 150.00
[[holdings]]
symbol = "BTC-USD"
quantity = 0.5
cost_basis = 30000.00
[display]
show_header = true
show_fundamentals = false
show_holdings = false
sort_by = "change_percent"
sort_descending = true
[colors]
gain = "#00ff00"
loss = "#ff0000"
neutral = "#ffffff"
header = "#1e90ff"
border = "#444444"
# Symbol groups
[groups]
tech = ["AAPL", "GOOGL", "MSFT", "NVDA"]
crypto = ["BTC-USD", "ETH-USD", "SOL-USD"]
| Format | Description | Example |
|---|---|---|
| Stock | Standard ticker | AAPL, GOOGL |
| Crypto | With USD suffix | BTC-USD, ETH-USD |
| Crypto shorthand | Expands to -USD | BTC.X -> BTC-USD |
| Crypto auto | Common cryptos | BTC -> BTC-USD |
Stonktop uses the Yahoo Finance API to fetch real-time quotes. No API key is required.
cargo build
cargo build --release
cargo test
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)This project is licensed under the MIT License - see the LICENSE file for details.