Track your moneyflow from the terminal.
A keyboard-driven terminal UI for managing personal finance transactions. Built for users who prefer efficiency and direct control over their financial data.
Supported Platforms:
- ✅ Monarch Money - Full integration with editing and sync
- ✅ Amazon Purchases - Import and analyze purchase history
- ✅ Demo Mode - Try it without an account
Documentation: moneyflow.dev
# Install with pip
pip install moneyflow
# Or run without installing (recommended)
uvx moneyflow
# Or use pipx
pipx install moneyflow# Try demo mode first (no account needed)
moneyflow --demo
# Connect to Monarch Money
moneyflow
# Analyze Amazon purchase history
moneyflow amazon import ~/Downloads/"Your Orders"
moneyflow amazon
# Load only recent data (Monarch)
moneyflow --year 2025First-time Monarch Money setup: You'll need your 2FA secret key. See the Monarch Money setup guide.
- Keyboard-driven - Navigate with
gto cycle views,Enterto drill down,Escapeto go back - Multi-select bulk editing - Select with
Space, edit withm/c/h, commit withw - Drill-down and sub-grouping - Analyze spending from multiple angles
- Type-to-search - Filter transactions as you type with
/ - Time navigation - Switch periods with
t/y/aand←/→arrows - Review before commit - Preview all changes before syncing to backend
- Encrypted credentials - AES-128 with PBKDF2 (100,000 iterations)
Full keyboard shortcuts and tutorials: moneyflow.dev
Clean up merchant names:
- Press
guntil Merchant view - Press
mon a merchant to rename all transactions - Press
wto review and commit
Recategorize transactions:
- Press
dfor detail view - Press
Spaceto multi-select transactions - Press
cto change category - Press
wto review and commit
Analyze spending:
- Press
gto cycle to Category view - Press
Enteron a category to drill down - Press
gto sub-group by merchant or account - Press
tfor this month,←/→to navigate periods
Learn more: Navigation & Search Guide
Import and analyze your Amazon purchase history:
- Request "Your Orders" export from Amazon (Account Settings → Privacy)
- Download and unzip "Your Orders.zip"
- Import:
moneyflow amazon import ~/Downloads/"Your Orders" - Launch:
moneyflow amazon
See Amazon Mode Guide for details.
Login fails with "Incorrect password"
→ Enter your encryption password (for moneyflow), not your Monarch password
→ If forgotten: Click "Reset Credentials" or delete ~/.moneyflow/
2FA not working → Copy the BASE32 secret (long string), not the QR code → Get fresh secret: Disable and re-enable 2FA in Monarch Money
Terminal displays weird characters → Use a modern terminal with Unicode support (iTerm2, GNOME Terminal, Windows Terminal)
Complete reset
rm -rf ~/.moneyflow/
pip install --upgrade --force-reinstall moneyflow
moneyflowMore help: Troubleshooting Guide
Full documentation available at moneyflow.dev
- Installation
- Quick Start Tutorial
- Navigation & Search
- Editing Transactions
- Keyboard Shortcuts
- Monarch Money Setup
- Amazon Mode
- Credentials encrypted with AES-128 using PBKDF2 key derivation (100,000 iterations)
- Encryption password never leaves your machine
- Stored in
~/.moneyflow/credentials.encwith 600 permissions - See SECURITY.md for full details
Contributions welcome! See Contributing Guide.
Development setup:
git clone https://github.com/wesm/moneyflow.git
cd moneyflow
uv sync
uv run pytest -vCode quality checks:
uv run pytest -v # Tests
uv run pyright moneyflow/ # Type checking
uv run ruff format moneyflow/ tests/ # Formatting
uv run ruff check moneyflow/ tests/ # LintingSee Developing moneyflow for details.
This project's Monarch Money backend uses code derived from the monarchmoney Python client library by hammem, used under the MIT License. See licenses/monarchmoney-LICENSE for details.
Monarch Money® is a trademark of Monarch Money, Inc. This project is independent and not affiliated with, endorsed by, or officially connected to Monarch Money, Inc.
MIT License - see LICENSE file for details.
Disclaimer: Independent open-source project. Not affiliated with or endorsed by Monarch Money, Inc.
