The ledger itself is a modest app: accounts, categories, splits, a budget and a handful of reports fit in SQLite and a local web page, and an agent can write it in a sitting. The weekend goes on the parts that make Quicken feel automatic: reading messy OFX and QFX files without duplicates, pairing transfers, reconciling to a statement, and investment lots with cost basis. Quicken's real edge is its bank connections to about 14,000 institutions, which a personal build can't match, so yours runs on files you download yourself every few weeks.
Before you buildQuicken has no free plan. The Starter tier and the web-based Simplifi plan are cheaper, so check whether you use Deluxe's budgets and investment tools at all.
Build me a local money tracker to replace Quicken Classic Deluxe. Requirements:
- Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves
http://localhost:4860 and binds to 127.0.0.1 only.
- Storage: better-sqlite3 in ./data/ledger.db. Tables for accounts (checking, savings, credit card,
loan, brokerage), transactions with splits, categories and tags, payees, scheduled items, budgets
and security prices. Amounts are integer cents; every schema change is a numbered migration.
- Import: drop a file on the accounts page. Read OFX/QFX (`ofx-js`), QIF and bank CSV, with a
column-mapping step remembered per account. Skip duplicates by FITID, or by date + amount + payee
when there is none, and show a preview before anything is written. Rules ("payee contains X")
set category, tags and a cleaned payee; link the two legs of a transfer between my own accounts.
- Register: one view per account with a running balance, inline edits, split editing, search, and a
reconcile mode where I enter the statement balance and tick items until the difference is zero.
- Budget and reports: a monthly amount per category with rollover; spending by category and month,
income versus expenses and net worth over time (`recharts`), each with a CSV download.
- Investments: buy, sell, dividend and split entries; holdings per account from FIFO lots, cost
basis and realised gain per tax year. Prices come from a CSV I import, with no live quotes.
- Quicken migration: `npm run import-qif <file>` reads a QIF exported from Quicken (accounts,
categories, transactions, splits, memorized payees) and prints what was and was not mapped.
- Single user. No accounts, no telemetry, local-first: nothing leaves the machine.
- Out of scope: bank connections and automatic downloads, bill pay, a mobile app, tax-software export.
- README: how to download files from a bank, how to export QIF from Quicken (one account per file),
where ./data lives and how to back it up.Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Quicken Classic Deluxe.
Extend the money tracker in this folder. Requirements: - Add a /quick page that works as an installable web app (manifest + service worker) with one form: amount, account, category, payee and date, defaulting to today. - Entries made offline are stored in IndexedDB and sent when the page reconnects; the server rejects exact duplicates by a client-generated id. - Serve /quick on a second port (QUICK_PORT in .env) protected by a long random token in the URL, so only that port needs exposing through a tunnel; the main UI stays on localhost. - Show the last ten entries and let me delete one for five minutes after creating it. - Update the README with how to expose the quick-entry port and rotate the token.
Add scheduled bills to the money tracker in this folder. Requirements: - A recurring rule per item (weekly, monthly on a day, yearly) with payee, account, category, expected amount and a "remind me N days before" setting. - An Upcoming page listing the next 30 days with the projected balance of each account after every item, flagging any day it would drop below zero. - Entering a bill posts a real transaction and moves the rule to its next date; skipping one leaves a note instead. - Send reminders by SMTP (nodemailer, credentials in .env) from a daily check at 07:00. - Update the README with the schedule and the SMTP keys.
Add a capital gains report to the money tracker in this folder. Requirements: - For a chosen tax year, list every sale with the lots it closed, acquisition and sale dates, proceeds, cost basis and gain, marked short or long term by holding period. - Let me pick the lot method per account (FIFO, LIFO or specific lot), and show the effect on the total before saving the choice. - Handle splits and reinvested dividends as new lots and keep wash-sale candidates flagged but unadjusted, with a note that tax treatment depends on the country. - Export CSV in the column order I define in a mapping file. - Update the README with the lot methods and the limits of the report.
Add category suggestions to the money tracker in this folder. Requirements: - After an import, uncategorised transactions get a suggested category from my own history: the most common category for the same payee, then for similar payee text. - If ANTHROPIC_API_KEY is set, send only payee text and amount buckets (never account names or numbers) to the model for payees with no history; the README must list exactly what is sent. - Suggestions show as greyed cells I accept with one key or edit; accepted ones can become a rule. - Keep a log of accepted and rejected suggestions and show the hit rate on the settings page. - Update the README.
Years of categorised history sit in the file, and many people have a download routine that works. Quicken is also one of the few desktop apps that handles investments, rental properties and a household in one place, and changing tools means re-checking every balance.
Estimate · Runs on your own computer with no running cost. The build is token usage on your agent plan, and the investment and reconcile parts take most of it.
Checked 2026-10-20 against Quicken Classic Deluxe's docs: 1, 2, 3, 4, 5, 6, 7, 8
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Classic Starter | custom | — | Entry desktop plan; the pricing page gives it no price and no feature list. |
| Classic Deluxe | — | $6.99 | Windows and Mac. Connections to over 14,000 financial institutions, unlimited tags and categories, budgets, debt-payoff tools, the Lifetime Planner, pre-built reports, investment and net worth tracking. |
| Classic Premier | — | $7.99 | Everything in Deluxe plus advanced investment tools and tax planning, a full portfolio view, BillPay and premium support. |
| Classic Business & Personal | — | $10.99 | Everything in Premier plus business and rental cash flow views, branded invoices, and Schedule A to E tax reports. |
Not answered here? Tell us and we'll add it.
Ask a question ›Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Automatic transaction downloads from about 14,000 banks and card issuers, Investment performance tools and tax planning reports.
About $6.99 a month on the Classic Deluxe plan, $83.88 a year (checked 2026-10-20).
Automatic transaction downloads from about 14,000 banks and card issuers; Investment performance tools and tax planning reports; Bill pay and bill reminders tied to your accounts; The Lifetime Planner retirement model and the mobile companion app; Phone and chat support. If any of those matter to you, keep paying.
Yes: Actual Budget (open source), Firefly III (open source), GnuCash (open source).