Skip to content

Latest commit

 

History

280 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

shmoney logo

shmoney

Private first. Local first. Personal first.


badge badge badge

badge badge badge

badge badge

shmoney

shmoney is a local-first personal finance app for the desktop. It tracks your accounts, transactions, budgets, and investments in a single SQLite database on your own machine. There is no cloud backend, no user account, and no telemetry.

It is built for people who want a full-featured finance tracker without handing their bank credentials or transaction history to a hosted service. Bank data comes in through SimpleFIN or plain file imports, and everything else, including AI categorization, runs entirely on your device.

Built with Electron, React, TypeScript, and SQLite. Runs on Windows, macOS, and Linux.

✨ Features

  • 🏦 Bank sync via SimpleFIN. Pull balances, transactions, and investment holdings without handing over bank credentials.
  • 📄 File import. CSV, TSV, OFX, QFX, and QIF, with column mapping and duplicate detection.
  • 🤖 On-device AI categorization. An optional local LLM (via llama.cpp) categorizes transactions, fully offline.
  • 💬 Chat with your finances (experimental). Ask the same on-device model questions about your finances; it runs read-only SQL queries and can chart the results, scoped to one account if you like, fully offline with history stored locally.
  • Rules engine. Prioritized rules run on every sync; the app suggests new ones from how you categorize.
  • ✉️ Envelope budgeting. Assign monthly amounts to category envelopes and track what remains.
  • 📊 Custom reports. Drag-and-drop dashboards with chart, table, and stat widgets, plus saved filters.
  • 🔁 Transfer detection. Money moved between your own accounts is excluded from income and spending.
  • ↩️ Activity log with undo. Every change is recorded and reversible, even across restarts.
  • 📈 Investments and net worth. Holdings with market value and cost basis, and per-currency net worth.

📸 Screenshots

🏦 Accounts
Accounts page showing balances and net worth
🧾 Transactions
Transactions table with filters and categories
✉️ Budget
Envelope budget with monthly assignments and remaining amounts
📊 Reports
Reports list of saved dashboards

Spending Overview report with stat, bar, pie, and line widgets
💬 Chat
Chat with the on-device model about your finances
↩️ Activity
Activity log of changes with undo
🤖 Settings: local model
Settings page for downloading and selecting the local LLM

🔜 Coming soon

  • 🇪🇺 European bank sync. Connect to European banks alongside SimpleFIN.

🔒 Privacy and data

  • All application data lives in a SQLite file in your OS user-data directory. You can back it up, move it, or inspect it with any SQLite tool.
  • SimpleFIN credentials are encrypted using the OS keychain and never leave the Electron main process.
  • The only network calls the app makes are to your SimpleFIN bridge and the one-time LLM model download. There is no telemetry and no cloud sync.

🚧 Status

shmoney is under active development and has not reached a stable release. The database schema may change between versions.

🤝 Contributing

Bug reports and feature requests are welcome via GitHub issues; see CONTRIBUTING.md. Pull requests are not accepted. Security issues should go through private vulnerability reporting instead of public issues.

📜 License

shmoney is source-available under the PolyForm Noncommercial License 1.0.0. You are free to use, modify, and share it for any noncommercial purpose; commercial use is not permitted. If you are interested in a commercial license, open an issue.

The shmoney name and logo are not covered by the license: forks and derived works must use a different name and logo.

About

personal finance app - private first, local first, personal first

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

5 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Used by

Contributors

Languages