A privacy-first, manual-entry personal finance tracker that lives entirely in your browser and syncs securely to your own Google Drive. No centralized database, no bank API scraping, and absolute control over your financial data.
Traditional finance apps try to do too much: they scrape your bank credentials, attempt to auto-categorize your spending (and usually fail), and lock your data into their proprietary, centralized databases.
Moniq is different:
- Zero Lock-in: Your data acts as your backend. Moniq creates a clean Google Sheet inside a
moniqfolder in your private Google Drive and securely syncs your JSON ledger there. - Manual > Automated: Build financial awareness by manually logging income, expenses, and transfers exactly how you want.
- Limitless Customization: No hardcoded banks. Create your ultimate taxonomy of custom Accounts, Payment Methods, and Categories.
- Blazing Fast: Because logic runs locally via
zustandandindexedDB, the app is instantaneous. It silently writes to Google Sheets in the background using a delta-sync engine.
- Double-Entry Ledger: Professional accounting engine hidden behind a simple, intuitive UI.
- Speed Entry Workflow: Optimized for bulk data entry with keyboard shortcuts (
Cmd/Ctrl + Enter), continuous context, and smart field focusing. - Advanced Sync Engine: Robust delta-syncing with conflict resolution, automatic header repair, and support for Google Sheets serial dates.
- Automated Tiered Backups: Intelligent backup system that maintains daily, weekly, monthly, and yearly snapshots in your Google Drive.
- Soft-Delete & Trash: Safe deletion architecture with a centralized workspace to restore transactions, accounts, or categories.
- Custom Ordering: Drag-and-drop reordering for Payment Methods and Categories to keep your most-used items on top.
- Net Worth Breakdown: Real-time tracking of Liquidity vs. Long-term Savings.
To run moniq locally on your machine:
- Node.js (v18+)
- A Google Cloud Platform account (to generate an OAuth Client ID).
- Go to your Google Cloud Console.
- Create a project and enable the Google Sheets API and Google Drive API.
- Under Credentials, create an OAuth 2.0 Web Application Client ID.
- Set the Authorized JavaScript Origins to
http://localhost:5173(or your deployment URL). - Copy the Client ID.
git clone https://github.com/YOUR_USERNAME/moniq.git
cd moniq
npm installCopy the example environment file and insert your Google Client ID:
cp .env.example .envOpen .env and set VITE_GOOGLE_CLIENT_ID=your-client-id.
npm run devVisit http://localhost:5173. Log in with your Google account, and moniq will automatically provision your database inside your Google Drive!
For detailed insights into how this software was designed:
Contributions, issues, and feature requests are welcome! See our Contributing Guide to get started.
This codebase is MIT Licensed. See LICENSE for details.