OmaStockTicker
A stock ticker watchlist bar widget for Omarchy's Quickshell-based status bar, styled after the macOS Stocks widget.
Click the pie-chart icon in the bar to open a dropdown showing your watchlist, grouped into ETF and Stock tabs, each with live price, change, and an intraday sparkline.
<p align="center"> <img src="screenshots/bar-icon.png" alt="Bar icon" width="600"><br> <img src="screenshots/panel.png" alt="Stock Ticker panel" width="320"> </p>Features
- Add / remove tickers — type a symbol (e.g.
AAPL) and hit Add; click the✕on a row to remove it, or select a row and pressxfrom the keyboard. - Auto-categorized tabs — new tickers are classified as ETF or Stock automatically from Yahoo Finance's instrument type, and land in the right tab.
- Live quotes — price, absolute change, and percent change, colored green/red.
- Intraday sparkline — a small line chart under each ticker, plotted from the day's 15-minute closes.
- Keyboard-friendly — Up/Down (or j/k) to move the selection,
xto delete, Enter/Space to activate the focused control. - Persists across restarts — your watchlist is saved to
~/.local/state/omarchy/settings/stock-ticker.json. - No API key required — quotes come from Yahoo Finance's public chart endpoint via
curlandjq.
Requirements
- Omarchy (Quickshell-based shell)
curlandjqonPATH(both ship by default on Omarchy)
Installation
Clone this repo's contents into a plugin folder named stockticker under Omarchy's user
plugin directory — the folder name must match the id in manifest.json:
git clone https://github.com/Macs9319/OmaStockTicker ~/.config/omarchy/plugins/stockticker
Add the widget to your bar:
omarchy bar put stockticker
New plugins sometimes need a full shell restart (not just a hot reload) to size the bar icon correctly the first time:
omarchy restart shell
Updating
cd ~/.config/omarchy/plugins/stockticker
git pull
omarchy restart shell
Uninstalling
omarchy plugin disable stockticker
rm -rf ~/.config/omarchy/plugins/stockticker
Your saved watchlist at ~/.local/state/omarchy/settings/stock-ticker.json is left in place
in case you reinstall later; delete it manually if you want a clean slate.
How it works
Panel.qml is a single Omarchy shell plugin (bar-widget kind) built on the shell's Panel
base component. On open, and every 90 seconds while open, it shells out to curl (piped
through jq) against Yahoo Finance's unauthenticated chart endpoint
(query1.finance.yahoo.com/v8/finance/chart/<SYMBOL>) for each tracked symbol, pulling the
current price, previous close, instrument type, and a day of 15-minute closes for the
sparkline. No API key or server-side component is involved.
License
MIT