Changes

2026

July

0.96.0
Windows: Fix silent no-op account, category, and category group rename.
0.95.1
Fix stuck zoom on iOS browser.
0.95.0
Do not corrupt journals on Windows.
0.94.0
Accounts tab: Add UX to set an account to type `Liabilities:CreditCard`.
0.93.0
Plan tab: Make RTA and Available match YNAB.
0.92.1
Code cleanup.
0.92.0
Clean up the code.
0.91.8
Fix a list of minor bugs, mostly UI annoyances
0.91.1
Fix zero amounts on the Record tab were hard to read on light themes.
0.91.0
Add change log.
0.90.2
Fix moving money below zero draining Ready to Assign.
0.90.1
Fix more multi-currency bugs in the Plan tab.
0.90.0
Make record and plan edits, undo, and redo feel snappy.
0.89.10
Fix a clone UX bug.
0.89.9
Fix browser filesystem bugs.
0.89.8
Fix multi-currency bugs in the Plan tab.
0.89.7
Fix a clone error in the browser.
0.89.6
Fix Plan tab discrepancies with YNAB.
0.89.5
Fix WebDAV sync issues.
0.89.4
Fix overzealous search matching.
0.89.3
Fix a phantom record row.
0.89.2
Fix Ready to Assign appearing in the Plan view.

June

0.89.1
Internal test improvements.
0.89.0
Add accounts directly from the Account tab.
0.88.2
Fix the Nextcloud integration.
0.88.1
Fix Ready to Assign bugs.
0.88.0
Infer elided posting amounts when loading so every transaction balances.
0.87.0
Fix several Plan tab bugs, including group rename, Assigned stacking, category handling, and Available.
0.86.0
Preserve in-progress text in the Plan Assigned field.
0.85.0
Serialize git commits and default empty commit messages.
0.84.0
Add a gain and loss report.
0.83.0
Abort the merge when conflict resolution fails.
0.82.1
Embed the application icon in the Windows executable.
0.82.0
Fix hledger journal compatibility issues reported by hledger's author, including date parsing, account-only journals, and .prices files.
0.80.1
Stop matching Beanscrape accounts by file name.
0.80.0
Open and save journals on iOS.
0.78.3
Cache-bust browser JavaScript so updates load reliably.
0.78.2
Snap a photo to attach a receipt on Android and iOS.
0.78.1
Add Android continuous integration.
0.77.3
Fix flaky tests.
0.77.2
Fix Reflect charts showing the wrong values.
0.77.1
Fix Import Review reporting a false discrepancy with the bank.
0.77.0
Make the Plan and Reflect tabs currency-aware.
0.76.1
Fix an hledger compatibility test.
0.76.0
Add multi-currency support for any commodity, fetching FX, security, and crypto rates from free APIs.
0.75.0
Fix text input in the browser.
0.74.0
Fix being unable to open journals in the browser or on Android.
0.73.0
Fix file drops not working in Firefox.
0.72.0
Attach receipts and documents to records.

May

0.71.1
Internal refactoring.
0.71.0
Use the Android storage permission to open journals.
0.70.0
Improve the payee picker.
0.68.1
Fix being unable to search for transfers or credit card payments.
0.68.0
Record transfers between accounts.
0.66.7
Harden macOS code signing for auto-update.
0.66.5
Sign the macOS auto-update package.
0.66.4
Fix records not being written in chronological order.
0.66.3
Ensure the bundled Beanscrape binary is executable.
0.66.2
Fix donut charts breaking after a charting library update.
0.66.1
Fix a build error.
0.66.0
Close remaining hledger compatibility gaps.
0.65.6
Fix flaky WebDAV tests.
0.65.5
Build releases from the latest main before promoting them.
0.65.4
Fix Ready to Assign being cut off in the Plan view.

April

0.65.3
Fix the file picker not working on Android.
0.65.2
Fix the browser app not listing records.
0.65.1
Fix Android getting stuck on the splash screen.
0.65.0
Upgrade the UI framework to Avalonia 12.
0.64.0
Fix the YNAB starting balance import.
0.63.0
Import Review now computes running balances in posting order across interleaved days.
0.62.0
Fix bugs when deleting records.
0.61.0
Ensure journals pass both "hledger check" and "hledger check --strict".
0.60.3
Fix auto-update breaking the journal integrity check.
0.60.2
Fix stale updater manifests on macOS.
0.60.1
Fix the macOS updater shipping an unsigned executable.
0.60.0
Sort the Records table by column.
0.59.0
Fix auto-update.
0.58.0
Verify the machine id inside the signed license payload.
0.57.0
Unify account mapping across all import flows.

March

0.56.2
Add an account type selector to every import flow.
0.56.1
Fix a duplicate "Expenses:" prefix when applying a YNAB import.
0.56.0
Limit license checks to the 1st and 28th of the month.
0.55.0
Stop inferring the running balance.
0.54.0
The import menu now requires an open journal.
0.53.0
Import Review now works for every import flow.
0.52.0
Review YNAB imports before applying them.
0.51.1
Improve the file dialog fallback on Linux.
0.51.0
Improve the Rules view with search, autocomplete, auto-naming, and layout polish.
0.50.0
Prevent unhandled exceptions from crashing the app.
0.49.0
Add End Balance Review to the Beanscrape import.
0.48.0
Fix deduplication.
0.47.0
Beanscrape import now filters the date range automatically.
0.46.0
Remove the scripts directory concept.
0.44.0
Improve the Beanscrape import UI.
0.43.0
Infer accounts from an hledger journal that has no account declarations.
0.42.0
Remove the Beanscrape scripts directory.
0.41.0
Support any hledger journal.
0.40.0
Compile the browser app with full WASM AOT for faster startup.
0.39.2
Add tests that catch browser startup failures.
0.39.1
Fix the browser app failing to start.
0.39.0
Add browser crypto for signing and verification.
0.38.0
Add a username setting used to author your journal's git commits.
0.37.0
Fix several Beanscrape integration issues.
0.36.0
Tie license verification to your device.
0.35.0
Switch to API-based licensing.
0.34.2
Fix being unable to paste in the Android browser.
0.34.1
Match YNAB API imports more accurately.
0.34.0
Add a drag grip handle and a status dot column to the Records tab.
0.33.1
Fix the folder picker not appearing in Safari.
0.33.0
Add a commit diff viewer to the History tab.
0.32.1
Fix being unable to edit a record's Description.
0.32.0
Make the Plan tab look and behave more like YNAB.
0.31.0
Make Ready to Assign match YNAB's calculation.

February

0.30.0
Show clearer feedback while installing Beanscrape.
0.29.0
Import directly from the YNAB API.
0.28.0
Choose the currency for your budget.
0.27.0
Add incremental YNAB import so re-imports only bring in what is new.
0.26.1
Fix the git forge OAuth Test Settings button not using the CORS proxy.
0.26.0
Require accepting the terms on browser and mobile, not just desktop.
0.25.0
Support git push and pull on mobile.
0.24.0
Sync through Dropbox with OAuth sign-in.
0.23.0
Add Android and iOS builds.
0.22.1
Improve the Settings tab, especially in the browser.
0.22.0
Add demo data so you can try Surebeans without connecting an account.
0.21.0
Add a detailed conflict resolver for sync conflicts.
0.20.0
Add a Sync tab to push and pull your journal from a git remote.
0.19.1
Narrow the History table so it fits the window.
0.19.0
Bulk rename payees and create rules to categorize them automatically.
0.18.0
Add a responsive layout that adapts to narrow windows and phones.
0.17.0
Add keyboard shortcuts.
0.16.0
Split a record across multiple categories.
0.15.2
Fix browser bugs.
0.15.1
Enable compiled bindings across the app for faster, more reliable UI.
0.15.0
Add a Sankey chart to Reflect.
0.14.1
Fix the Income vs Expense table rendering slowly and accumulating filters when you return to Records.
0.14.0
Add Buffer and Spending by Payee views to Reflect.
0.13.0
Add app-wide visual styling.
0.12.0
Add Reflect tables and charts for reviewing where your money goes.
0.11.0
Import transactions through SimpleFIN.
0.9.0
Add a month picker.
0.8.0
Add a New Bank wizard for setting up a bank connection.
0.7.0
Raise the free trial transaction limit and show beta pricing.
0.6.0
Move bank credential management into Beanscrape and rename the "scraper" concept to "script".

January

0.4.0
Run Surebeans in the browser.
0.3.0
Fix OFX and CSV imports not creating a git commit.
0.2.0
Sync bank transactions through the Beanscrape integration, with credential storage, account matching, and transaction pairing.
0.1.1
First public release.
0.1.0
First build of Surebeans, a private budgeting app backed by plain-text hledger journals and git.