Roadmap
Everything we've shipped so far. We put out small updates often, and plenty of them started life as feedback from the people using Coral Dash. Every release lands on both the cloud app and the self-hosted edition.
Latest releaseNew
v5.2.3Nov 2026
Daily Pot Total Savings
76
Releases shipped
Dec 2025
Shipping since · 11 months and counting
Shipped
76 releasesEvery release ships to both the cloud app and the self-hosted Docker edition.
v5.2.3Latest5 Nov 2026
Daily Pot Total Savings
- Pot Total Savings records its value every day the sync runs, not only when it moves — a quiet day gets a £0.00 change, as Trading 212 and precious metals already do
- The nightly sync, 'Sync Transactions' and opening the dashboard or Net Worth page all record it — one value per day, so a later sync the same day replaces that day's value
- 'N days ago' beside Pot Total Savings now means the last day its value was recorded, not the last day it changed — reversing v3.5.2, where a pot total that hadn't moved kept its date
- With a healthy daily sync it reads 'Today', so a bigger number means the sync isn't reaching you — the nightly run still skips you if your sheet sync fails outright or is on its weekly retry
- Days already missed aren't filled in — the daily history starts from your first sync after updating
- Fixed a zero change in Value History showing as a green '+£0.00 (+0.0%)' gain — every account now shows it as a grey '£0.00', with no sign or percentage
- On the Net Worth page and the dashboard card, a quiet day shows no change beside Pot Total Savings rather than its last movement, and adds nothing to the total change
- 'Total Updates' on the Pot Total Savings page now goes up by one each synced day
- Behind the scenes, a failed Pot Total Savings update now answers with a clear error message
- Self-hosted: no migration, nothing to configure — docker compose pull coraldash && docker compose up -d
v5.2.24 Nov 2026
Security & Maintenance Update
- Security update — Next.js moves to 16.4.5, its 3 November security release, fixing seven moderate advisories, none of which applied to Coral Dash as built
- Dependencies move to releases at least seven days old, within their current major — React 19.3.1, the Supabase client, TanStack Query and Radix UI 1.8.1 among them
- Known advisories across all dependencies, development tooling included, drop from 23 (7 high) to 9 (1 high)
- No new features, and nothing looks or works differently on any screen
- Cloud: the daily sync is now scheduled by Supabase Cron instead of GitHub Actions, at 05:00 UTC (5am UK time in winter, 6am in summer)
- Self-hosted: the image builds with pnpm 11.28.9 and installs pg and node-cron at the lockfile's versions (8.23.1 and 4.6.0), not the newest on the day
- Self-hosted: once the 5.2.2 image is on GHCR, docker compose pull coraldash && docker compose up -d — from v5.0.x it also brings v5.1.0 and v5.2.0, and v5.1.0's one migration runs on boot
v5.2.123 Oct 2026
Security Update
- Security update — the self-hosted image moves to Node.js 24.22.1, Node's October security release, fixing four high-severity issues including a remote code execution flaw in its Brotli decoder and two ways past TLS certificate hostname checks — the cloud runs on Vercel's Node 24, which Vercel patches itself
- Next.js moves to 16.4.2, fixing three Next.js advisories published on 22 October (GHSA-2464-fhr4-w9xw, GHSA-673q-mjm6-r5xr, GHSA-p3m5-59mp-jv5r) — none of their stated conditions applied to Coral Dash, but it takes the fix anyway
- Self-hosted: once the 5.2.1 image is on GHCR (ghcr.io/coraldash/coraldash:5.2.1), docker compose pull coraldash && docker compose up -d — it also brings v5.0.2, v5.1.0 and v5.2.0, and runs v5.1.0's one migration (a wider unique key on rules) on boot, nothing to configure
v5.2.020 Oct 2026
American Express Statements
- American Express statements — drop an Amex UK PDF statement on the Import page and it goes straight to review, with no column mapping
- Every transaction table is read — payments, each cardholder's purchases (supplementary cards too) and fees
- Each row takes its year from the statement period, as Amex prints none — a statement that runs across New Year is dated correctly
- Foreign purchases import at their sterling amount — the foreign amount and exchange rate stay out of the transaction's name
- Plan It lines, which move a purchase already listed into an instalment plan, are left out, as importing them would add a credit and a second charge — the monthly plan fee is kept
- Rows are checked against every printed total — each cardholder's, the Plan It totals and the summary's 'New Debits' and 'New Credits'
- Review says 'Every row adds up to the statement's own totals', or names the total that doesn't match with both figures, or says why rows weren't checked
- Refunds and payments on a card statement aren't counted as income unless your own rules or history say so — your card payment goes to Transfers
- Self-hosted: no migration, nothing to configure — docker compose pull coraldash && docker compose up -d
v5.1.017 Oct 2026
Shared Payees
- Shared payees — fixed expenses can now use the same payee when each matches a different reference (e.g. rent and insurance sent to your own account), and so can income sources
- In Configure, a payee used by reference-matched rules shows a '1 rule' or '2 rules' badge — picking it ticks and locks 'Match by reference instead of name'
- A rule that would match the same payments as another is refused with a message saying what it clashes with — Personal and Joint rules on one payee don't clash
- Search in Configure finds a payee by the reference on any of its payments, not just the newest — picking the row pre-fills that payment's reference
- Fixed the payee search showing 'No transactions found' or a partial list when a read failed — it now says 'Couldn't load transactions'
- Variable spending now leaves out only the payments a fixed expense matches — yours may move a little, but fixed-expense figures don't
- Self-hosted runs one new migration (a wider unique key on rules) on container boot, nothing to configure: docker compose pull coraldash && docker compose up -d
v5.0.211 Oct 2026
Address Search & Session Fixes
- Fixed address search ('Search for your property', cloud only) answering without a sign-in — it now needs a signed-in account with a subscription or trial, like the rest of the mortgage tracker
- No account data was ever reachable through it — what was exposed was the address lookup service's quota
- Fixed an expired session renewing twice when the app redirected you — the redirect now carries the new cookie, and a revoked session is cleared from your browser
- A response that sets a session cookie is now marked as not cacheable — only matters for self-hosted behind a caching reverse proxy, which could have stored one
- Groundwork for Next.js's Cache Components, still off — the request gate moves to Next 16's 'proxy' convention, and the build fails if an API endpoint would be frozen at build time
- No new features, and nothing looks or works differently on any screen
- Self-hosted: no migration, nothing to configure — docker compose pull coraldash && docker compose up -d
v5.0.111 Oct 2026
Unused Code Removed
- Two unused components (an old user menu and a sign-out button) are removed from the code — neither was on any screen, so nothing looks or works differently
- Self-hosted: no migration, and you lose nothing by staying on v5.0.0 — to update anyway: docker compose pull coraldash && docker compose up -d
v5.0.010 Oct 2026
Coral Dash 5.0: Security and New Foundations
- Security update — Next.js moves to 16.4.0, fixing a critical remote code execution advisory in its image response (GHSA-vcvr-r3jv-pc5j) and six others
- Known advisories across all dependencies, development tooling included, drop from 27 to 2, neither of them critical
- New foundations — React 19.3, Stripe 23 and TanStack Table 9 underneath, so checkout, billing and the expense tables look and work as they did
- 23 packages the app no longer used are removed — 90 direct dependencies become 67, so there is less to install and less to patch
- Fixed 'Next billing' in Settings showing today's date instead of the day your subscription renews (cloud)
- Fixed 'Updated -1 days ago' on Net Worth between midnight and 1am in summer — updates are now counted in UK calendar days
- Fixed a failed background request on every Dashboard and Net Worth load for accounts with no pots
- Self-hosted: /sitemap.xml no longer lists marketing pages your instance doesn't have
- Self-hosted runs Next.js itself, so update now — no migration, nothing to configure: docker compose pull coraldash && docker compose up -d
Got a feature request or found a bug?
Your feedback shapes what gets built next. Tell us what would make Coral Dash work better for you.
Share your feedback