Halvora is a desktop application that tracks all 32 Bitcoin halvings and their price action.
From block height precision to trading chart analysis across halving periods.
Bitcoin's block reward halves 32 times until the 33rd halving reduces it to 0 satoshis, meaning the 32nd halving itself is the "1 satoshi" epoch — the final positive reward before mining becomes fee-dependent.
- Complete tracking of every halving event from genesis to the final Bitcoin subsidy
- Block height precision — exact block-level detection of halving triggers. Additional blockchain stats: mining difficulty, coins issued, and more.
- Time estimates — projections for future halving events
- Chart analysis — Price action line charts and utilizes AVWAP anchored from the halving dates.
- Performance analysis — Analyzing halving period P/L and return metrics across each cycle.
Data Pipeline
- Daily candles — BTC exchange data stored locally, going back to ~2012
- SQLite database — local storage for fetch and retrieval of historical data
- Automatic updates — program handles data fetching and persistence
- Pre-compiled database — Exchange database is pre-compiled and integrated in repo and binary. This prevents the need for a full initial fetch.
Tech Stack
| Component | Technology |
|---|---|
| Language | Rust |
| GUI Framework | ICED GUI |
| Exchange Data | BitStamp (by Robinhood) |
| Blockchain Data | Mempool.space |
| Local Database | SQLite |
| Official Font | Geist Mono |
Screenshots
Running the program
Halvora is available as an AppImage which means "one app = one file", which you can download and run on your Linux system while you don't need a package manager and nothing gets changed in your system.
AppImages are single-file applications that run on most Linux distributions. Download an application, make it executable, and run! No need to install. No system libraries or system preferences are altered.
Unlike other applications, AppImages do not need to be installed before they can be used. However, they need to be marked as executable before they can be run. This is a Linux security feature.
Visit the releases page to find the latest AppImage release here: https://github.com/DOCKPORT/Halvora/releases
More info on AppImage: https://appimage.org/


