A Streamlit-powered dashboard that leverages the Blink API to track Bitcoin and USD wallet balances, along with comprehensive transaction history.
- 💰 Real-time wallet balance tracking for BTC and USD
- 📊 Complete transaction history with monthly grouping
- 🔄 Automatic refresh every 2 minutes
- 👥 Multi-account support
- 📱 Responsive design
- 🔒 Secure API key management
- Python 3.x
- Streamlit
- GQL (GraphQL client)
- Pandas
- Blink API key(s)
- Clone the repository:
git clone <repository-url>
cd bitcoin-wallet-monitor
- Install the required packages:
pip install streamlit gql requests-toolbelt pandas
- Create a
.streamlit
directory and addconfig.toml
with the following content:
[server]
headless = true
address = "0.0.0.0"
port = 5000
- Start the Streamlit application:
streamlit run app.py
-
Open your web browser and navigate to
http://localhost:5000
-
Add your wallet account:
- Click "Add Account" in the sidebar
- Enter an account name
- Enter your Blink API key
- Click "Add Account"
-
View your wallet information:
- Select an account from the dropdown menu
- View real-time BTC and USD balances
- Explore transaction history grouped by month
- Real-time BTC balance in satoshis (converted to BTC)
- Real-time USD balance in cents (converted to USD)
- Automatic refresh every 2 minutes
- Complete transaction history grouped by month
- Expandable monthly views
- Transaction details including:
- Date and time
- Transaction type (Send/Receive)
- Amount with currency
- Status
- Memo/Description
- Add multiple accounts
- Switch between accounts
- Secure API key storage
- Easy account removal
The application is built with Streamlit and uses:
- GraphQL for API communication
- Pandas for data handling
- Streamlit's built-in components for UI
API keys are stored in session state and are not persisted between sessions. Always keep your API keys secure and never share them.