Changelog
Release notes, bug fixes, and new features — current version v1.8.4
v1.8.4
2026-09-13Planned Expenses is now just Bills.
- ImprovementBills now have an optional Notes field — handy for an account number or how to pay — and the notes show on each bill card, under the reminder days.
- ImprovementExpense notes are now labelled 'Notes (optional)' and show on each expense card under the category.
- FixEditing a bill no longer clears notes it already had.
- ImprovementOpening OmniTrak from your home screen now goes straight to your dashboard instead of the landing page. If you are signed out, you land on sign-in and return to the dashboard afterwards.
- FeatureThe birthday perk now actually runs: Pro is granted automatically for your whole birth month, every year. Previously the birth month was only stored — nothing ever gave you the free month.
- ImprovementYour birth month can now only be set once. It unlocks a free month of Pro every year, so allowing changes would let it be claimed over and over; the field locks after you save it.
- ImprovementAdded a 'Redesign + Pro perks' template to the admin notification composer, covering the new look and the two ways to get Pro free — your birth month, and inviting friends.
- ImprovementTightened the space between the OmniTrak mark and the wordmark so the logo reads as one lockup — on the landing page, the dashboard header, the sidebar and the sign-in pages.
- FixOn the Bills calendar header, the amount left and the word 'left' sit on one line again instead of the word dropping underneath, and the decimals are no longer faded out.
- ImprovementOptions in dropdown menus and pickers now show a hand cursor on hover, so they read as clickable.
- ImprovementHovering the circle next to a bill now shows a 'Mark as paid' tooltip, so it is clear what it does before you click it.
- ImprovementThe tick on a paid bill is now green-on-green — a light green tick on the deep green circle in light mode, a deep green tick on the bright circle in dark mode — instead of the near-black glyph it used before.
- ImprovementThe streak pop-up is gone. It appeared over the dashboard a moment after every visit to say something that was never urgent, and had to be dismissed each time.
- FeatureYour streak now has its own section on the dashboard, under Upcoming bills — how many days in a row you have opened OmniTrak, and how far off the next milestone is.
- ImprovementMoved 'Recently paid' up to sit directly under 'This week' on the Bills page, so a bill you just settled stays next to the ones still waiting rather than sitting below the end of the month.
- Improvement'Recently paid' is now ordered by when you paid, newest first, instead of by due date — so the bill you just marked paid is always the top row, and each one sinks as you pay the next.
- ImprovementPop-ups and slide-up forms on phones now have noticeably rounder top corners, so a sheet reads as a card lifting off the bottom edge rather than a panel butting into the screen.
- ImprovementMoved the settled progress bar on the Bills calendar up under the month and the amount left, so the summary of the month sits together at the top instead of being stranded below the grid.
- ImprovementA fully paid day on the Bills calendar is now filled with the same green as the Mark paid button, instead of a faint tint that was easy to miss.
- ImprovementThe 'Needs you now' panel can be dismissed with an X if you want it out of the way. It comes back next time you open the page — it is hidden for the visit, not turned off.
- ImprovementRenamed Planned Expenses to Bills everywhere — the sidebar, the bottom bar, page headings, dialogs, search, emails and the landing page. It is what everyone called it anyway, and it is shorter on a phone.
- ImprovementThe page now lives at /dashboard/bills. Old links and bookmarks to /dashboard/planned-expenses, including links to a single bill, redirect to the new address.
- ImprovementOn the Expenses page, the 'Planned paid' figure and the 'Planned' bars in the 6-month chart now read 'Bills', matching the rest of the app.
- ImprovementDatabase updates now ship automatically with each release instead of being applied by hand, so a new feature can no longer arrive before the tables it needs.
- FixOn a phone, the landing page header no longer runs over the OmniTrak logo while it works out whether you are signed in. The placeholders standing in for Log in and Sign up were wider than the buttons themselves, so for a moment they pushed the logo underneath them.
- FeatureEvery new signup now sends the OmniTrak team an email — who joined, how they signed up, and the running account total — whether they came in through email, a magic link, or Google. One email per account, never a repeat.
- FixTicking a bill off on a phone no longer leaves the tick outline sitting on the next bill. Settling a bill moves it down the list, and the row that slid up under your finger was picking up the highlight meant for the one you had just tapped.
- FeatureThe landing page now has a chat box in the lower-right corner for anyone deciding whether to sign up. Three suggested questions — what the app does, what it costs, and whether you need to link a bank — answer instantly with one tap, and anything else you type gets a short AI answer based only on the app's real features and prices.
- Feature'Contact support' sits next to Send in that chat. Leave your email and a message and it goes straight to the team, with the chat attached so you don't have to repeat yourself; replies come back by email.
- ImprovementGroundwork for the OmniTrak mobile app: account balances, Net Balance and money formatting now come from code the website and the phone app share, so both will always show the same figures.
- ImprovementThe OmniTrak mobile app can sign you in with Google or a one-time emailed link as well as your password, so accounts created with Google work on the phone too.
- FixThe chat box on the landing page now calls the app OmniTrak. It had been using the wrong product name in its button, its greeting, its suggested questions and the AI's answers.
- FixThat landing page chat is now titled 'OmniTrak guide', so it can't be mistaken for Ask OmniTrak, the AI assistant inside the app for Pro and Premium. Asked about your own spending or bills, it now points you to Ask OmniTrak after you sign in, instead of answering as if it were the assistant.
- FixSigning out of the OmniTrak mobile app no longer says you need a password to get back in. You can sign back in with Google, an emailed link or your password.
- ImprovementEvery 'Contact support' message is now saved, not just emailed. The admin portal has a new Support inbox listing each one with the chat that led up to it, where the team can reply by email and mark it resolved. A message still reaches the team if the email fails to send.
- ImprovementCategory is now optional when you add an expense or a bill — in Add Entry, Add Expense, Add Bill and the setup wizard. Leave it blank and the entry is saved under Other; you can still pick one, and Transport still offers the vehicle link.
- ImprovementForms that slide in from the side now show one field per row instead of squeezing two side by side — Add Entry, expenses, bills, receivables, vehicles, accounts, transfers and goals — so every field gets the full width of the panel.
- FeatureBill reminders can now arrive as push notifications on your phone or computer, even when OmniTrak is closed. Turn it on for each device under Settings • Notifications or on the Notifications page, and use 'Send a test' to check it works. It's on every plan. On iPhone and iPad, add OmniTrak to your Home Screen first.
- ImprovementTapping a reminder notification opens the page it is about: Bills for a bill, To-do for a task. Four or more reminders on the same morning come as one summary notification instead of a stack.
- ImprovementPush notifications follow the Notifications and Bill reminders switches in Settings, and signing out turns push off on that device so the next person on it doesn't get your reminders.
- FixUnsubscribing from reminder emails, or signing up with a phone number instead of an email, no longer switches off your in-app bill reminders as well. Those accounts had been getting no reminders at all.
- FixDatabase changes pushed to the repo now reach the live database automatically. Every run so far had stopped before applying anything, because GitHub's servers cannot reach the database's IPv6-only address; the job now connects through Supabase's IPv4 connection pooler.
- FixOn Settings • Preferences, the App mode cards now line their text up at the top. The shorter Bills & reminders card had its title and description floating in the middle beside the taller Full cashflow card.
v1.8.3
2026-09-13A bill you just paid stays where you can see it.
- ImprovementMarking a bill paid no longer drops it straight into the collapsed Settled list. It now sits in a new 'Recently paid' section for a week, stamped 'Paid today', 'Paid yesterday' or 'Paid 3 days ago', and only moves down to Settled once a week has passed since you marked it.
v1.8.2
2026-09-12Badges and status labels are rounded too.
- FeatureThe Expenses page now tells you whether a month is heavy. It shows what you have spent, what that projects to by month end, and how that compares with your own recent months — so the total means something without you doing the arithmetic.
- ImprovementEach day in the list now carries its own total and a bar showing it against the heaviest day, so you can see what a day cost without adding it up.
- ImprovementAdded search and tappable category filters to Expenses. The category chips show the same breakdown the pie chart did and narrow the list as well, so the old chart is gone — the full breakdown still lives on the Categories page.
- ImprovementLarger expenses now stand out in the list instead of every row looking the same, so the few entries that actually moved the month are easy to spot.
- ImprovementRemoved the 'Expenses — Today' figure. It read zero every morning and peaked at bedtime, so it measured the hour more than the habit; the new pace line covers it.
- ImprovementStatus labels — Paid, Overdue, Auto, Scheduled and the rest — are now rounded pills, matching the account and vehicle chips that sit next to them on the same row instead of looking square beside them.
- ImprovementThe same goes for the small labels elsewhere in the app: billing period tags on bills, vehicle tags, sidebar counts, the sharing and referral labels, and the trial badge on sign-up.
- FixThe back-to-top button now has a visible outline in both light and dark mode. It was asking for a border but never got a colour, so it drew a transparent one and the button faded into whatever was behind it.
- ImprovementOn phones, pop-up dialogs now slide up from the bottom of the screen as a sheet instead of appearing in the middle — closer to your thumb, with a grab handle at the top, and long ones scroll inside themselves rather than running off the screen. On tablets and desktop they stay centred.
- ImprovementRounded the last square corners on the sign-in and sign-up pages: the Password / One-time link switcher, the message and warning panels, the show-password button, and the logo tile.
- ImprovementThe plans on the landing page are now three separate cards instead of one block split by dividing lines, with the recommended plan outlined so it stands on its own.
- ImprovementRounded the profile menu's items — the panel was already rounded but each row squared off as you hovered it — along with the cards and plan switcher on your Subscription page.
- FixThe 'Back to Dashboard' button on the Subscription page had its padding stripped out, so it was cramped and awkward to tap. It now has a normal button's spacing while staying aligned with the text above it.
- ImprovementSwept the rest of the app for square corners in one go rather than page by page: Settings, Referrals, Feedback, Vehicles, Receivables, Accounts, Categories, the AI document manager, admin pages and more — 132 panels in all. Text fields were rounded to match other inputs rather than to the card shape.
- FeatureHovering a date on the Bills calendar now shows what is due that day — each bill with its amount and whether it is due, overdue, part paid or settled. Tapping a date does the same on a phone.
- ImprovementCalendar dates on Bills are now colour-coded by what they hold: green with a tick when everything due that day is paid, red when something is overdue, amber when a payment is due or part paid. The most urgent bill sets the colour, so one overdue bill still shows through on a day that is otherwise settled.
- ImprovementForms in the slide-out panels breathe more: extra space between fields and between side-by-side inputs, so a long form is easier to scan.
- ImprovementCancel and Save in those panels are now full touch-size buttons rather than the smaller default, which makes them easier to hit on a phone.
- ImprovementSlide-out panels and mobile drawers open and close more smoothly — they ease out on the way in and back in on the way out, the backdrop now fades in step with the panel instead of snapping, and opening is quicker (was half a second).
- FixThe Mark paid and Part payment buttons on Bills stayed square on desktop while everything around them had softened.
- ImprovementThe Reminders list now uses more of the screen on a desktop — it was capped at a narrow column with a lot of empty space either side.
v1.8.1
2026-09-12Rounded corners everywhere, on desktop as well as phones.
- ImprovementCards, panels and dashboard modules now keep their rounded corners on desktop instead of sharpening. OmniTrak is a mobile-first app, so a card should read the same on a laptop as it does in your hand.
- ImprovementThe landing page is rounded on every screen size — the feature cards, pricing table, stats band, calculators, reviews, the hero ledger and the assistant chat bubbles.
- ImprovementButtons, menus, dropdowns, date pickers, dialogs, text fields and toasts now share the same rounded language, so nothing looks sharp next to a rounded card.
v1.8.0
2026-09-12Bills rebuilt around when things are due, and whether you can cover them.
- FeatureBills now groups by what needs you — Overdue, Due this week, Later this month, and Settled — each with its own count and running total. The list was always sorted this way underneath; now the reasoning is visible instead of looking arbitrary.
- FeatureIn Full cashflow mode, a runway across the top plots every bill on the month, sized by amount and marked against today, so you can see what lands when at a glance.
- FeatureFull cashflow mode also warns you when an account cannot cover what it owes this month — before you tap Mark paid, not after. The affected bill says how much that account is short.
- FeatureIn Bills & reminders mode, the page now opens on the single bill that needs you, with Mark paid attached and the next few queued behind it. Settle it and the next one steps up.
- FeatureBills & reminders mode gained a month calendar showing every due date at a glance, colour-coded by what is overdue, due, scheduled or already paid.
- ImprovementMarking something paid is now a single tap on the row itself, instead of opening the three-dot menu and picking Mark paid.
- ImprovementThe Monthly / Quarterly / Yearly tabs are gone. A quarterly bill due this month is part of this month, so all of them now live on one screen rather than being split across three tabs with a total nobody budgets against.
- ImprovementReminders are now shown on every row in Bills & reminders mode, where they were previously hidden on phones — the mode has only two features and reminders is one of them.
- ImprovementRows are no longer tinted six different colours. Status reads from a stamp, with a coloured edge only on the ones actually behind, so what needs attention stands out instead of the list reading as a quilt.
- ImprovementRemoved the category pie chart from Bills. Category share is a year-end question and the chart was collapsed by default on phones anyway; the per-category breakdown is still available from the Categories button.
v1.7.5
2026-09-09Mobile layout fixes across the dashboard and bills, plus softer corners on phones.
- FixAmounts on the dashboard no longer get cut off on phones. Large balances used to be clipped mid-number because a peso figure can never wrap, and the summary tiles had no room to shrink — they now scale down and fit whatever the amount is.
- FixThe Bills page no longer scrolls sideways on a phone. The two summary cards sat in a fixed side-by-side row that could grow wider than the screen once the amounts got long enough.
- ImprovementCards, tiles and bill rows now have noticeably rounder corners on phones and stay crisp on desktop, so the app feels more like an app in your hand and more like a ledger on a big screen.
- ImprovementThe three-dot menu on each bill is easier to hit on a touchscreen — the button looks the same but now has a full-size tap area, so it no longer takes two tries with a thumb.
- ImprovementThe mobile 'Add Bill' button is now just 'Add', so it stops crowding the month picker next to it on narrow screens.
- ImprovementIn Bills & reminders mode, bills no longer show an account badge. Accounts are switched off in that mode, so naming one was noise on every row — your saved account link is kept and reappears the moment you switch back to Full cashflow.
- FixIn Bills & reminders mode, a bill's detail page no longer shows an Account row whose badge led to the Accounts page — a page that mode deliberately blocks, so tapping it bounced you back to the dashboard. Account labels are also hidden from that bill's payment history there.
- ImprovementRounder corners on phones now reach the rest of the app, not just cards: buttons, dropdowns, menus, the Spending by category panel and the Monthly/Quarterly/Yearly switcher all soften on a phone and stay crisp on desktop, where nothing has changed.
- ImprovementThe month picker on Bills now reads 'Sep 2026' instead of 'September 2026', so the button and its dropdown stay the same width whichever month you pick instead of resizing as you scroll the list.
- FixClosing the month picker no longer leaves four faint corner marks floating around it. A leftover focus outline was being drawn with no thickness but a 2px gap, which became visible once the corners got rounder; it is now only drawn for keyboard users, flush to the button.
- FixThe notifications panel no longer sits flush against the edge of a phone screen, and its loading spinner is no longer rendered five times too large — the OmniTrak mark briefly filled the whole panel while notifications loaded.
- FixPage titles no longer disappear on a phone when a page has wide buttons beside them. On Notifications the 'Notifications' heading was being squeezed away to nothing and the buttons still ran off the edge of the screen; buttons now drop to their own line when they don't fit.
- FixTidied the Notifications page layout: the list was wrapped in an invisible panel that pushed text flush against its edges, so the page now spaces its heading, summary line and notifications consistently.
v1.7.4
2026-08-22Bills & reminders mode drops auto-debit and stops blocking payments on account balance, plus a round of account-security hardening.
- ImprovementIn Bills & reminders mode, marking a bill paid or partially paid no longer checks the linked account's balance, so a low tracked balance can never stop you recording a payment you have actually made. Full cashflow mode still warns you before a payment would overdraw an account.
- ImprovementBills & reminders mode no longer offers or runs auto-debit — the toggle is hidden and no bill is ever paid automatically. Your existing auto-debit settings are kept untouched and start working again the moment you switch back to Full cashflow.
- FixBills that already had auto-debit switched on no longer go silent in Bills & reminders mode: because nothing pays them automatically there, they now get a due-date reminder like any other bill, and you can set your own reminder days on them.
- FixOpening any dashboard, account or admin page while signed out now takes you straight to the login page instead of briefly showing an empty app shell — and after you log in you land on the page you were originally trying to reach.
- FixShared receivable invite links still open without an account, as intended: the new sign-in requirement deliberately skips them, so someone you invite can review and confirm what they owe you before signing up.
- HotfixClosed a gap that let a signed-in account switch itself onto a paid plan without paying. Subscriptions can now only be granted by a verified payment from our payment provider.
- HotfixSubscription payments are now verified more strictly: the payment must actually have completed and must cover the price of the plan being claimed, and a repeated confirmation for the same payment can no longer add extra paid months.
- HotfixPayment confirmations, receipts, reminder-email sends and referral payouts can no longer be triggered for another person's account — each is now restricted to the account it belongs to.
- ImprovementTightened permissions on several internal database helpers so they can only be used by the app's own trusted background jobs, and stopped one of them from being usable to check whether an email address has an OmniTrak account.
- ImprovementPage-view analytics now ignores malformed or oversized page addresses instead of storing them.
v1.7.3
2026-08-14Sorting by last activity in the admin Users list.
- ImprovementThe admin Users list can now be sorted by last activity date — clicking the 'Last activity' column shows the most recently active accounts first, clicking again shows the least recently active, and a third click restores the default newest-signup order. Accounts with no recorded activity always sort last, and sorting works together with the search box.
v1.7.3
2026-08-06New referral program — invite friends and earn free months of Pro, with a share page in the app and referral reporting in admin.
- FeatureAdded a referral program: every account now gets a personal invite link and code. For every 5 friends who sign up through your link you earn 1 free month of Pro, and it stacks — 10 friends is 2 months, 15 is 3.
- FeatureEvery referred friend who upgrades to a paid plan earns you 1 more free month of Pro, once per friend and stackable, paid on top of your signup milestones.
- FeatureNew 'Refer & Earn' page under the dashboard with easy sharing: copy your code or link, share straight to WhatsApp, Facebook, X, Telegram or email, use your phone's native share sheet, show a scannable QR code, or send invites to up to 10 email addresses at once (25 per day).
- FeatureThe referral page also shows your progress to the next free month, how many friends have joined and upgraded, and a ledger of every free month you have earned.
- FeatureNew Referrals section in the admin portal: programme totals plus per-referrer counts for signups, paid upgrades, free months granted, and last referral date, with search by email, name, or code.
- FeatureAdded a new referral-invite email that friends receive when you invite them by email, highlighting the 14-day Pro free trial their account starts with.
- ImprovementReferral rewards are granted automatically and extend your Pro access from whenever it currently ends, so unused days are never lost and there is nothing to claim.
- ImprovementThe landing page now has a referral section with a worked example of how the free months stack, plus a new FAQ entry explaining the program.
v1.7.1
2026-07-16A simpler mobile navigation bar and an easier-to-reach account menu.
- ImprovementReworked the mobile bottom bar: it now shows Expenses, Bills, Accounts, and a new 'More' button (which opens the full menu) — the old 'Category' shortcut has been removed.
- ImprovementMoved your profile and account menu to the top-right of the mobile header, and removed the hamburger menu since everything now lives in 'More' and the account button.
- ImprovementUpdated every email (welcome, reminders, receivable invites, account notifications, and admin broadcasts) to use the new OmniTrak chameleon logo and the app's Schibsted Grotesk wordmark, replacing the old logo image.
v1.7.0
2026-07-10A brand-new look for OmniTrak — the calm, statement-inspired 'Passbook' design, rolled out across the landing page, sign-in, the dashboard, and every in-app screen in both light and dark mode.
- FeatureRedesigned OmniTrak with a new 'Passbook' visual style inspired by a well-kept printed bank statement: one deep-green ink accent, clean hairline rules, dot-leader rows, status stamps (Paid, Due, Overdue), and aligned banking-grade numbers — no gradients or clutter.
- ImprovementNew landing page: a two-column hero with a live 'upcoming bills' ledger preview, real top navigation (Features, How it works, Pricing, FAQ), statement-style feature and pricing sections, and a two-column FAQ.
- ImprovementNew sign-in and sign-up: a split-screen layout with a passbook brand panel, tabbed password / one-time-link sign-in, a clearer password-strength meter, keyboard-accessible controls, and prominent 14-day Pro free trial messaging on sign-up.
- ImprovementNew dashboard home as a statement view: a tracked-balance header, flat at-a-glance stat cells, a cleaner spending chart in the app's own colors, and an upcoming-bills list with status stamps. Amounts now use aligned tabular figures and no longer jitter.
- ImprovementRefreshed every in-app screen — accounts, expenses, bills, receivables, vehicles, goals, reminders, account settings, and admin — with flat hairline cards and a consistent green-and-neutral color system in place of the old multi-color chips, for cleaner, more legible pages in both light and dark mode.
- ImprovementNew typography: Schibsted Grotesk for text and Geist Mono for all numbers, dates, and amounts.
- ImprovementNew OmniTrak logo — a green app-icon mark paired with the wordmark set in the new app font — replacing the old logo image across the app, the sign-in panel, the browser tab, and the install icon.
- ImprovementBills now shows an 'Auto-debit' indicator on each bill set to pay automatically, so auto-paid bills are easy to spot in the list at a glance (matching the detail page and dashboard).
- FixCorrected the Free plan description to show one in-app bill reminder; email reminders remain a Pro feature.
- FixFixed a rare 'useInsertionEffect must not schedule updates' error that could appear when navigating or opening the cookie-policy dialog; the top loading bar now schedules its updates safely.
v1.6.1
2026-06-29New accounts now start with a 14-day Pro free trial — full Pro access, no card required.
- FeatureEvery new account automatically gets a 14-day Pro free trial on signup: email reminders, unlimited reminders, partner sharing, and custom expense categories. When the trial ends, accounts move to the free plan automatically.
- ImprovementThe welcome email now highlights the 14-day Pro free trial and the Pro features it unlocks, with an upgrade link for after the trial.
- ImprovementThe landing page now promotes the 14-day Pro free trial in the hero, the Plans section, and a new FAQ entry.
v1.6.0
2026-06-28Introducing Ask OmniTrak — a private AI assistant for Pro and Premium members that answers questions about your finances and your own uploaded documents, available from a floating button on every screen.
- FeatureNew Ask OmniTrak AI assistant: chat about your budget, accounts, goals, and spending trends. It reads your live data on demand to answer accurately.
- FeatureKnowledge base — upload PDFs, text, or Markdown files, paste notes, or add a website URL, and the assistant can search them to answer your questions (Retrieval-Augmented Generation with citations).
- FeatureFloating assistant widget available across the app, plus a full assistant page with chat history you can revisit or delete.
- FeatureChoose your AI model — OpenAI, Claude, or Gemini — from a provider switcher, routed securely through the Vercel AI Gateway.
- ImprovementAnswers stream in real time and cite the documents they drew from, so you can verify the source.
v1.5.15
2026-06-23Faster loading feedback across the app — a global progress bar and per-card spinners — plus a fix for the Accounts hydration error and Add Entry / Reminders refinements.
- FeatureAdded a thin progress bar at the top of every screen that appears whenever data is loading (YouTube-style), in the app's green accent.
- ImprovementThe top progress bar now also shows during page navigation on every route (link clicks, back/forward, and in-app redirects), not just when data is fetching — so switching pages always gives instant loading feedback.
- ImprovementClicking an account card now turns its options (⋮) button into a loading spinner while the account page opens, so it's clear the tap registered.
- ImprovementOn mobile, the Add Entry panel now fills the screen from the top (with a tap-to-close gap above) instead of hugging the bottom, so account/category dropdowns have room to open and the Cancel/Save buttons stay pinned at the bottom.
- ImprovementUpdated the landing page (features, plans, FAQ, and animated headline) to reference 'Reminders' instead of the separate 'To-Buy' and 'To-Do' lists, matching the renamed in-app feature.
- FixFixed a 'hydration failed' error on the Accounts and account-detail pages. Those pages now read data with useSuspenseQuery so the server and client render identical content on first paint.
- FixIn the Add Entry → Transfer panel, the 'From account' and 'To account' dropdowns no longer drift out of alignment — the balance line under 'From account' used to push the 'To account' dropdown down a row. Both columns now pack to the top so the selectors sit on the same line.
- FixThe Add Entry panel now reliably autofocuses the Amount field when it opens, instead of occasionally leaving it unfocused. Focus is now hooked to the panel's open event rather than a fixed timer, so it survives the responsive layout switch and the open animation.
- FixFixed an unnecessary write to the server on every login. Just-loaded preferences were being saved straight back unchanged because the auth/user object updates a couple of times right after sign-in (session re-hydrate and avatar sync). Preferences are now only persisted when their value actually changes.
v1.5.14
2026-06-13Account adjustment modal no longer shows long floating-point balances.
- FixThe Adjustment modal's New Balance field now prefills the account's current balance rounded to 2 decimal places, instead of a long value like 1234.5599999999999. The computed adjustment difference is also rounded to cents.
v1.5.13
2026-06-03To-Do List is now Reminders with category tagging per item.
- FeatureRenamed 'To-Do List' to 'Reminders' with a new Bell icon across the sidebar and page.
- FeatureEach reminder item can now be tagged with a category: Meeting, Pantry Items, Errand, Personal, Work, Health, or Other.
- ImprovementRemoved the separate To-Buy page from the sidebar — the /dashboard/to-buy URL now redirects to Reminders.
- ImprovementNew reminder items default to the Personal category instead of Grocery.
v1.5.12
2026-05-23Failed auto-debits are now tracked as a first-class status on bills, with daily retries until paid.
- FeatureWhen an auto-debit doesn't go through (insufficient balance, missing linked account, or insert failure), the bill now shows a red Failed badge for the month, with the reason on hover.
- FeatureFailed auto-debits retry automatically on each daily cron run until the bill is paid or the month rolls over — no need to manually re-trigger.
- ImprovementBill detail page shows a Failed callout with the specific reason and surfaces failed attempts in the payment history.
- ImprovementMarking a failed bill as paid (via the list dropdown or the detail page) now replaces the failure with a real payment and creates the linked account transaction.
- ImprovementFailed bills sort to the top of the list so they're easy to spot and resolve.
v1.5.11
2026-05-17Calculators are now a public route — usable without signing in, indexed for search, and still shown inside the dashboard shell for logged-in users.
- FeatureTax, Savings, and Debt Payoff calculators now live at /calculators (and /calculators/tax|savings|debt-payoff) so anyone can use them without an account. Old /dashboard/calculators URLs redirect to the new paths.
- ImprovementWhen a logged-in user opens /calculators, the page renders inside the dashboard AppShell (sidebar + top bar) — guests get the landing header instead.
- FeatureLanding page now has a Calculators section (3 cards, one per calculator) styled like the Plans section.
- FeatureAdded /calculators, /calculators/tax, /calculators/savings, and /calculators/debt-payoff to the sitemap so search engines can discover and crawl them. robots.txt already allows the path.
- FeatureAdded an 'id' anchor to every landing section (hero, features, how-it-works, highlights, built-for, subscribe, calculators, reviews, faq, cta) for in-page navigation and SEO.
- ImprovementHow-it-works on the landing page is now four steps: added 'Add your tracked accounts' as step 1, and the reminders step now calls out partial payments and the Partial status badge.
- ImprovementSidebar and header search now point to /calculators (and per-calculator routes) instead of the dashboard paths.
v1.5.10
2026-05-17Bill list rows cleaned up — all per-row actions moved into a single 3-dot menu.
- ImprovementRemoved the inline Mark Paid / Add Partial buttons and the trailing Edit / Remove icons from each row in the Bills list.
- ImprovementAdded a 3-dot menu on the upper right of each row with: Mark Paid (or Mark Unpaid), Add Partial Payment (or Add to Payment when already partial), Edit, and Remove.
- ImprovementReminder label now groups the 'before due date' days together — e.g. '5, 4, 3d before, Due date' instead of '5d before, 4d before, 3d before, Due date' — so the row stays compact on mobile.
v1.5.9
2026-05-13Each bill now has its own detail page with payment history and inline edit.
- FeatureNew route /dashboard/bills/[billId] shows amount, due date, linked account/vehicle, reminders, and a full month-by-month payment history. Mirrors the /dashboard/accounts/[accountId] pattern.
- FeatureEdit button on the detail page opens the same Bill form used by the list — extracted into a shared dialog component so list and detail page stay in sync.
- FeatureMark Paid (and Unmark) for the current month is available right on the detail page, with the same insufficient-funds guard the list uses.
- FeaturePayment history list lets you unmark any past month — the linked account transaction and expense entry are cleaned up via cascade.
- ImprovementClicking a row in the Bills list now navigates to the detail page (matches the Accounts list behavior).
- ImprovementAdded a Pencil button to each row so editing stays one click away from the list view.
v1.5.8
2026-05-12Admin notifications: in-app + email channels, HTML editor, templates, batch-send, and one-click unsubscribe.
- FeatureAdmin → Notifications now has a Delivery selector: In-app, Email, or Both.
- FeatureEmail body editor with toolbar (bold, italic, headings, lists, links), HTML source toggle, and live preview.
- FeatureBuilt-in notification templates (Track your finances, Month-end review, Bills check-in) — one click fills title, in-app body, and email HTML.
- FixBulk broadcast emails now use Resend's batch API (up to 100 per request). Previous per-recipient parallel calls hit rate limits on larger user lists.
- FeatureEvery broadcast and reminder email now includes a signed one-click Unsubscribe link in the footer, plus List-Unsubscribe / List-Unsubscribe-Post headers for Gmail/Outlook native support.
- FeatureGET /api/unsubscribe processes unsubscribe clicks — verifies a per-user HMAC token and sets email_unsubscribed on the profile. Unsubscribed users are excluded from all future non-transactional emails.
v1.5.7
2026-05-08Unified expense dialogs with required account, bank logo, and balance validation.
- ImprovementAdjustment modal now takes a 'Current Balance' input instead of add/subtract direction buttons — the delta is computed and recorded automatically.
- ImprovementLive adjustment preview shown below the input (e.g. Adjustment +₱500 or Adjustment −₱200).
- ImprovementDescription field renamed to Notes in the Adjustment modal.
- ImprovementTransfer destination is now a dropdown showing each account's bank logo, name, and current balance.
- FeatureOptional Transfer Fee field added — when provided, a separate expense entry is recorded on the source account.
- FixAccount cards now show an external link icon on hover instead of edit/delete buttons (edit/delete moved to the account detail page).
- FixResolved browser warning about missing aria-describedby on dialog components.
- ImprovementAccount is now required when adding or editing an expense — expenses must always be linked to an account.
- ImprovementAccount dropdown in Add/Edit Expense now shows the bank logo alongside the account name.
- ImprovementAvailable balance is displayed below the account selector; saving is blocked if the expense exceeds the balance.
- FeatureSaving an expense with a linked account creates an account transaction to deduct the amount from the balance (Expenses page and Account detail page both do this).
- ImprovementAdd and Edit Expense modals on the Expenses page now use the same shared components as the Account detail page.
v1.5.6
2026-05-07Account modal improvements: interest rate, maintaining balance, warning indicators.
- ImprovementAccount Type field changed from button grid to a dropdown with Debit as default.
- ImprovementStarting Balance is now on the left and Currency on the right in the modal layout.
- FeatureInterest Rate (%) field added beside Interest Frequency — disabled until a frequency is selected.
- FeatureMaintaining Balance (optional) field added to the account form to set a minimum balance threshold.
- FeatureWarning icon shown on account cards and the account detail page when the balance drops below the maintaining balance.
v1.5.5
2026-05-07Account list redesigned as cards; currency field added to accounts; bank logos in modal.
- FeatureAdded a Currency field to the Add/Edit Account modal (PHP, USD, EUR, and 15 others). Each account balance is now formatted in its own currency.
- ImprovementAccount list on /dashboard/accounts is now a 3-column card grid on desktop and 1 column on mobile. Each card shows the bank logo, account alias, type • currency, tags, and balance.
- ImprovementBank and e-wallet logos are now displayed in the account form dropdown and trigger for all institutions that have a logo.
- ImprovementMoved 'Other' to the last position in the bank/e-wallet dropdown.
- ImprovementAccount cards now have a color-tinted border and a diagonal gradient overlay derived from each account's color.
- ImprovementCash account default color changed to sky blue (#0ea5e9) — migration updates existing accounts and the new-user trigger.
- FixBank logo lookup is now case-insensitive and ignores spaces, fixing Maribank and other edge-case spellings.
v1.5.4
2026-05-05Net Balance chart on /dashboard/accounts rebuilt on visx for crisper rendering, smoother hover interactions, and a richer themed tooltip.
- ImprovementReplaced the recharts-based 7-day Net Balance line chart with a visx implementation: smooth monotone curve, area gradient fill, themed grid, dashed crosshair, and a portal tooltip that follows the pointer.
v1.5.3
2026-05-04Cash is now a real per-user account; click an account to open its detail page. Per-account ledger: log expense, income, adjustment, and transfer entries on each account with a running balance and history.
- FeatureEvery new user now starts with a real 'Cash' account auto-created alongside their profile. Existing users have a Cash account backfilled, and prior references to the static Cash UUID are migrated to the real per-user account.
- ImprovementRemoved the built-in Cash and Borrowed placeholder accounts from /dashboard/accounts. Every account on the list is now a real DB row that can be edited, tagged, recolored, or deleted.
- FeatureClicking an account on /dashboard/accounts now opens a per-account detail page at /dashboard/accounts/[accountId] — the future home for that account's expense, income, transfer, and adjustment entries. A separate edit (pencil) icon keeps editing one click away from the list.
- FeatureEach account at /dashboard/accounts/[accountId] now has its own ledger. Add Expense, Add Income, Adjustment, and Transfer to another account directly on the wallet page. The current balance is computed from these entries (independent of expenses or bills that merely tag the account).
- FeatureTransfers create a paired entry on both accounts so balances stay in sync. Deleting one leg of a transfer deletes the other automatically.
- FeatureAccount history list with per-entry delete. Adjustments support both 'add to balance' and 'subtract from balance' directions.
- ImprovementEdit and Delete buttons for the account itself now live in the top-right of the account detail page. Confirm dialogs replace inline prompts.
- ImprovementExtracted the Account form dialog into a shared component reused by /dashboard/accounts and the account detail page.
- ImprovementAccounts list now shows each account's live balance computed from its own ledger entries instead of summed expense/bill totals tagged to it. The 'This Month' card became 'Total Balance', the chart shows balance distribution across accounts, and balances reset to zero until you add ledger entries.
- FeatureAdd/Edit Account dialog now captures Account Type (Debit, Credit, Stocks, Crypto), Starting Balance, Interest Frequency (none / daily / weekly / monthly / quarterly / annually), and an 'Include in Net Balance' toggle.
- ImprovementAccount balances now use Starting Balance as the seed value: balance = starting_balance + sum(account_transactions). Visible on both the accounts list and the per-account detail page.
- FeatureReplaced the 'Total Balance' stat on /dashboard/accounts with 'Net Balance', summed across only the accounts where 'Include in Net Balance' is enabled. The card shows how many accounts are counted.
- FeatureReplaced the per-account distribution donut chart with a 7-day Net Balance line chart driven by a new server-side loader that reconstructs end-of-day net balance for each of the last 7 days.
v1.5.0
2026-05-04New Receivables tracker — track money owed to you with account linking and email confirmations.
- FeatureNew Receivables page (/dashboard/receivables): track money owed to you (IOUs, cash loans, shared bills) with debtor name, description, total amount, amount paid back, category, date lent, and due date.
- FeatureStatus tabs on Receivables: Unpaid, Partial, and Collected — with a quick-toggle checkmark on each row to mark fully paid or reset to unpaid.
- FeatureSummary stat cards: Total Owed, Collected, and Outstanding balance across all receivables.
- FeatureAccount linking: invite the debtor by email from inside the edit dialog. They receive an email showing the amount claimed and a Confirm / Decline button.
- FeatureInvite accept page (/dashboard/receivables/invite/[token]): the invited user can confirm they owe the amount or decline. Email mismatch is enforced so only the invited address can respond.
- FeaturePending confirmation banner: if another user has invited you to confirm a debt, a yellow banner appears at the top of your Receivables page with a direct Review link.
v1.4.24
2026-05-04Expenses and Bills: collapsible spending-by-category chart on small screens.
- ImprovementOn /dashboard/expenses, the Spending by category card is collapsed by default below the sm breakpoint; tap the card header (chevron on the right) to expand and show the chart or empty state. Tablet and desktop keep the chart visible with a static header.
- ImprovementOn /dashboard/bills, the same Spending by category header + chevron collapse behavior applies on mobile, with the shared collapsible card component used by both pages.
- ImprovementRestructured the Add/Edit Expense modals so the title and close (X) button stay pinned at the top and Cancel/Save stay pinned at the bottom while the form body scrolls — matches the Bill modal layout. Mobile users can no longer lose access to the title or action buttons when the on-screen keyboard opens.
v1.4.23
2026-05-04Vehicles spend chart uses grouped category bars. Transport bills linked to a vehicle require a vehicle category.
- ImprovementOn /dashboard/vehicles, the spend-by-vehicle bar chart now draws Fuel, Fees, Maintenance, Insurance, Other, and Bills as side-by-side bars per vehicle instead of a single stacked column.
- FixLogging, editing, or deleting an expense in the Transport & Commute category now invalidates React Query caches for the Vehicles page so linked per-vehicle spending refreshes without a full reload.
- FeatureBills in Transport & Commute now mirror Expenses: when you link a vehicle, choosing a vehicle category (Fuel, Fees, Maintenance & Repairs, Insurance & Registration) is required before saving.
- ImprovementVehicle spending charts treat categorized transport bills like categorized expenses (legacy bill rows without a vehicle category still roll into Bills).
v1.4.22
2026-05-04Fix expense modals on mobile; category selects now default to blank placeholder.
- FixAdd and edit expense modals on mobile no longer push the name input off-screen or hide the Cancel/Save buttons when the keyboard opens. Dialogs are now scrollable with a sticky footer.
- FixCategory dropdowns on mobile no longer clip options outside the viewport; the list now respects available screen height.
- ImprovementAdd and edit category dropdowns for expenses and bills now show 'Select category' placeholder instead of defaulting to a category.
- ImprovementMoved Accounts from the sidebar footer into the main nav, right after Dashboard, so it sits with the other primary destinations.
- ImprovementAligned the Accounts icon to the wallet icon used by the mobile bottom navbar, both in the sidebar and on the Accounts page header.
- ImprovementClarified the Accounts page subtitle to explain that this is the hub for recording expenses, income, transfers, and adjustments.
- FixFixed recoverable SSR error on /dashboard/accounts caused by accountsQueryOptions and accountTotalsQueryOptions calling Server Actions during initial render — the page now prefetches and dehydrates both queries on the server so useSuspenseQuery reads from the hydrated cache instead of firing the queryFn during SSR.
v1.4.21
2026-05-04Vehicles page redesign with expense categories, animated stat cards, and SSR fixes.
- ImprovementRenamed 'Fuel & Vehicles' to 'Vehicles' and moved to /dashboard/vehicles; old /dashboard/fuel redirects automatically.
- FeatureAdded month/year selector on the Vehicles page to filter spending by selected month.
- FeatureAdded vehicle expense categories — Fuel, Fees (Parking, Toll, etc.), Maintenance & Repairs, and Insurance & Registration.
- ImprovementWhen a transport expense is linked to a vehicle, a Vehicle Category is now required to better classify the spend.
- ImprovementDashboard, Expenses, and Bills pages now render stat cards and charts immediately — currency amounts animate from ₱0 to their real values as data loads, and the list shows the OmniTrak breathing logo until ready.
- FixFixed recoverable SSR waterfall error on /dashboard/bills caused by billsDataQueryOptions and userPreferencesQueryOptions calling Server Actions during initial render — switched to useQuery so the queryFn only runs client-side in effects.
- ImprovementExtracted AnimatedAmount (with optional currency prop) and useCountUp into a shared ui component for reuse across pages.
- FixPrefetch the subscription plan in the dashboard layout so the client cache is hydrated before render — eliminates the 'Server Functions cannot be called during initial render' recoverable error.
v1.4.20
2026-05-03Privacy settings page and Bills renamed to Bills.
- FeatureAdded /account/privacy page with profile visibility settings — toggle whether other subdivision members can see your name/avatar or phone number.
- FeatureAdded account self-deletion from the Privacy danger zone with a confirmation dialog.
- ImprovementPrivacy link in the account dropdown menu now navigates to the dedicated /account/privacy settings page instead of the legal hub.
- ImprovementRenamed the Bills feature to Bills app-wide — navigation, page titles, form dialogs, stat labels, search index, and all marketing copy updated.
- ImprovementRoute changed from /dashboard/bills to /dashboard/bills.
- ImprovementForm field 'Billing Period' renamed to 'Recurrence' for clarity.
v1.4.19
2026-05-03Goals savings targets, deposit tracking, confirmation dialog, and mobile navbar update.
- FeatureGoals can now have an optional target amount so you can set a savings objective.
- FeatureAdded deposit tracking — log individual contributions towards any goal with an amount, date, and optional note.
- FeatureProgress bar on each goal card shows how much has been saved vs. the target, with a 'Funded!' badge when the goal is fully reached.
- FeatureDeposit history is viewable and manageable inside the goal edit dialog, including individual deposit deletion.
- FeatureQuick 'Add Deposit' action available from the goal card dropdown menu.
- FeatureNew ConfirmDialog component replaces all native browser confirm() calls with a consistent modal.
- ImprovementAdd Deposit button now appears inline next to Target Amount in the Edit Goal dialog for quicker access.
- ImprovementEdit Goal dialog header now shows the goal name and target amount as a subtitle for quick context.
- ImprovementReplaced the Fuel shortcut in the mobile bottom navbar with Category, linking to the expense categories page.
- ImprovementBank / E-Wallet options in the account add/edit dialog are now sorted alphabetically for faster scanning.
- ImprovementAdded a search input inside the bank dropdown so users can filter institutions while selecting.
v1.4.18
2026-05-01Accounts now show institution logo badges and include Maribank in bank options.
- ImprovementAdded institution logo badges before each account name in the Accounts list for quicker visual scanning.
- ImprovementAdded Maribank to the Bank / E-Wallet dropdown options in the account add/edit dialog.
v1.4.17
2026-05-01Dashboard Bills stat now counts only bills applicable to the active month.
- FixDashboard Bills, Bills paid, and Bills + Expenses cards now exclude bills outside the current paid month context (including quarterly/yearly off-month and inactive date ranges).
v1.4.16
2026-05-01Bills page now supports month-based review like the Expenses page.
- ImprovementAdded a month selector on /dashboard/bills with the current month as default and recent-month options, matching the Expenses page flow.
- FixBill due-date/status calculations for yearly and quarterly bills now follow the selected paid month context instead of always using the current month.
v1.4.15
2026-05-01Dashboard Bills Paid bar now refreshes correctly after chart data shape update.
- FixVersioned the monthly breakdown React Query key to invalidate stale cached chart rows and ensure the new Bills Paid series is fetched and displayed.
v1.4.14
2026-05-01Dashboard monthly bar chart now includes a Bills Paid series.
- ImprovementDashboard chart updated to Bills vs Bills Paid vs Expenses vs Savings, with Bills Paid computed from monthly non-savings bills marked paid per month.
v1.4.13
2026-05-01Dashboard expense stat cards now reflect paid entries for the active month.
- FixDashboard 'Expenses' and 'Bills + Expenses' cards now total only paid daily expenses for the current paid month, preventing prior-month carryover.
v1.4.12
2026-04-30Mobile responsiveness improvements across the bottom navbar, insight popup, and expense form.
- ImprovementBottom navbar now shows Fuel and Accounts instead of To Buy and To Do, reflecting the most-used top-level destinations.
- ImprovementInsight popup repositioned above the mobile bottom navbar and scaled down with smaller text and padding on small screens.
- ImprovementExpense name and amount inputs on the expenses board now use a larger base font size on mobile to match native input styling.
v1.4.11
2026-04-30Expanded bill reminder day options and fixed setup wizard user refresh.
- ImprovementBill reminders now support all days 1–5 before the due date (previously only 3 days, 1 day, and on due date were available). UI labels updated to compact format (5d, 4d, etc.).
- FixSetup wizard now refreshes the user session after saving the profile step, preventing stale user data when continuing to the next step.
- FixSelect dropdowns now cap their height to the available viewport space instead of a fixed 384px, preventing overflow on small screens.
v1.4.10
2026-04-30Fixed expense edit dialog not saving; category selects now default to blank placeholder.
- FixExpense edit modal Save button was outside the form element, preventing any edits from being submitted.
- ImprovementAdd and edit category dropdowns for expenses and bills now show 'Select category' placeholder instead of defaulting to a category. Expenses previously set to 'Other' also open with the placeholder.
v1.4.9
2026-04-29Fixed quarterly and yearly bill reminders firing in wrong months; improved savings calculation.
- FixYearly bills now only trigger reminders in their configured due month — no longer fires every month near the due day.
- FixQuarterly bills now only trigger reminders in the correct calendar quarter months (Jan/Apr/Jul/Oct), not every month.
- ImprovementSavings in Bills vs Expenses vs Savings chart now counts expense entries categorized as savings created this month, plus bills with savings category marked paid this month.
v1.4.8
2026-04-29New user onboarding setup wizard after email confirmation.
- FeatureNew signup onboarding wizard guides users through setting their name, goals, first expense, and first bill to track — all skippable.
- ImprovementAfter confirming their email, new users land on the /setup page instead of jumping straight to the dashboard.
- ImprovementReturning users who already completed setup are automatically redirected to the dashboard.
v1.4.7
2026-04-29Minor bug fixes and performance improvements.
- FixFixed a bug where the dashboard insight popup could reappear after being closed if the user navigated away and back to the dashboard within the same session.
- FixResolved an issue where the built-in Cash and Borrowed accounts could sometimes fail to load on initial login, causing them not to appear on the Accounts page.
- ImprovementOptimized the loading of the changelog page by lazy-loading older entries and only rendering the most recent 5 entries on initial load.
v1.4.6
2026-04-28Pro/Premium users can now create custom expense categories.
- FeaturePro and Premium users can create, edit, and delete their own custom expense categories from /dashboard/expenses/categories.
- ImprovementCustom categories appear first on the Expense Categories page, above the standard built-in categories.
- ImprovementCustom categories are included in expense dropdowns so they can be assigned to expenses immediately after creation.
- ImprovementAdded 'Custom expense categories' to Pro plan benefits on the subscription and landing pages.
- FixCorrected the search index URL for Expense Categories to /dashboard/expenses/categories.
v1.4.5
2026-04-28Add/Edit Bill modal now matches the expense modal UX.
- ImprovementBill dialog now uses a proper form element — pressing Enter submits the form.
- ImprovementName field auto-focuses when the dialog opens.
- ImprovementEdit Bill dialog now has an inline Delete button in the footer, matching the expense modal.
- FixEnd Date picker no longer allows selecting future months or dates.
v1.4.4
2026-04-28Expenses page: month selector, locked calendar, and delete confirmation.
- ImprovementAdded month selector on the Expenses page (inline with + Add Expense) defaulting to current month, allowing navigation to past 12 months.
- ImprovementInline date picker calendar now locks navigation to the selected month only — no forward/backward month browsing.
- ImprovementQuick-add date resets to the 1st of the selected month when switching to a past month, and to today when on the current month.
- ImprovementExpense list delete now shows a confirmation dialog before permanently removing an expense.
v1.4.3
2026-04-28Admin users table now shows email confirmation date.
- ImprovementAdmin users table: added 'Confirmed' column showing the date the user confirmed their email.
v1.4.2
2026-04-28Cookie consent replaced with a minimal bottom-right popover.
- ImprovementCookie consent dialog replaced with a compact bottom-right popover showing a 'Read our cookie policy' link and a close button.
v1.4.1
2026-04-28Bills board: distinct status colors for Upcoming, Unpaid, Overdue, and Paid.
- ImprovementBill status 'Upcoming' (not yet due) now shows a blue badge and blue row highlight.
- ImprovementBill status 'Overdue' label renamed from 'Outstanding' to 'Overdue' for clarity.
- ImprovementBills sort order updated: Overdue → Unpaid (due today) → Upcoming → Paid.
v1.4.0
2026-04-27Fuel & Vehicles tracker — register vehicles and monitor transport spending.
- FeatureNew Fuel & Vehicles page at /dashboard/fuel — add, edit, and delete your vehicles (name, type, make, model, year, plate, color, fuel type, notes).
- FeatureEach vehicle card shows total transport spending from linked bills and expenses (bills total, expenses total, and entry count).
- FeatureBills with Transport & Commute category now show an optional Vehicle selector, linking the bill directly to one of your registered vehicles.
- ImprovementFuel & Vehicles added to sidebar navigation and global search index at /dashboard/fuel.
v1.3.21
2026-04-27Performance: eliminate unwanted refetches and rerenders on dashboard, expenses, and bills.
- ImprovementDashboard, expenses, and bills data now use staleTime: Infinity — data only refreshes after a real mutation, not on timer or window focus.
- ImprovementDisabled refetchOnWindowFocus and refetchOnReconnect globally — switching tabs or reconnecting no longer triggers unnecessary network requests.
- ImprovementFixed staleTime typo in query client (was 25 min due to wrong multiplier, now correctly 5 min for general queries).
- FixmonthlyBreakdown query key is now correctly scoped under the app's query hierarchy so it clears properly on user logout.
- ImprovementToggling a bill/expense payment no longer triggers a redundant refetch — optimistic updates are already correct and sufficient.
- ImprovementBills board category list is now memoized to prevent unnecessary child rerenders.
- FixExpenses board no longer fires a data fetch before auth resolves (added enabled guard).
- ImprovementRemoved refreshKey state from BudgetRefreshContext — calling refreshBudget() after mutations was causing a full re-render of the dashboard for no benefit (refreshKey was never consumed).
- ImprovementNotifications query now uses staleTime: Infinity with refetch guards — no longer polling on a 5-min cycle between navigations.
- ImprovementSubscription plan query on dashboard now waits for auth before firing, avoiding a wasted pre-auth request.
- ImprovementDASHBOARD_BENEFITS list moved outside the component — was recreated as a new array on every render.
v1.3.20
2026-04-27Profile name change now instantly updates the account menu.
- FixSaving a new full name on the Profile page now immediately reflects in the account dropdown menu without requiring a page reload.
v1.3.19
2026-04-27Landing page now shows user reviews; removed 'Reviews & Suggestions' from Pro plan benefits.
- ImprovementUser reviews section restored to the landing page.
- ImprovementRemoved 'Reviews & Suggestions' from Pro plan feature list on the pricing section.
v1.3.18
2026-04-27Partner sharing now shares Bills instead of My Expenses.
- ImprovementShared access now shows a partner's Bills (read-only with paid/unpaid toggle) instead of the My Expenses cashflow view.
- ImprovementAll sharing labels updated from 'My Expenses' to 'Bills' in settings, shared account hub, and access descriptions.
v1.3.17
2026-04-27In-app notification when admin grants a Pro or Premium subscription.
- FeatureUsers now receive an in-app notification when an admin activates their Pro or Premium plan, showing the tier and expiry date.
v1.3.16
2026-04-27To-buy and to-do free plan reduced to 5 items; items beyond the limit are blurred with a Pro lock badge.
- ImprovementFree plan to-buy and to-do lists now allow 5 items max (down from 10). Items beyond the limit are blurred and show a Pro lock badge instead of being hidden or deleted.
- ImprovementA plan note is shown below the page title: free users see '5 items max — upgrade to Pro', Pro/Premium users see 'Unlimited items with Pro or Premium'.
- ImprovementSubscription pages (landing and account) updated to reflect the new 5-item free tier limit.
v1.3.15
2026-04-27Dashboard insight popup shows streak or financial status in the bottom-right corner.
- FeatureA closable bottom-right popup slides in on the dashboard showing your day streak (if 2+), monthly bills paid percentage, or a financial tip.
- ImprovementStreak info moved from the welcome greeting to the insight popup.
v1.3.14
2026-04-27All monetary values now display with two decimal places app-wide.
- ImprovementCurrency and number formatting now shows full decimal values instead of rounding to whole numbers.
- ImprovementAmount input fields now accept decimal values (e.g. 1,234.56).
v1.3.13
2026-04-27Dashboard welcome greeting shows a fire streak for consecutive daily active users.
- FeatureDashboard welcome now shows a 🔥 day streak count when you visit on consecutive days.
v1.3.12
2026-04-27Bills page smart defaults, correct outstanding logic, and reminder cap for free users.
- ImprovementAdd Bill dialog auto-selects the billing period matching the active tab (quarterly or yearly).
- FixQuarterly bills now show outstanding based on the current quarter's due date, not the current month.
- FixYearly bills now show outstanding based on the bill's due month in the current year, not the current month.
- ImprovementQuarterly bill due date label now shows Q1–Q4 and the quarter's start month (e.g. Q2 • Apr 15).
- FixWhen a subscription expires, bill reminders are now capped to 1 — the bill that previously held the free reminder slot, or the first eligible bill if none has fired yet. Expense and to-do reminders remain Pro-only.
v1.3.11
2026-04-27Category names in bills and expenses now come from the database instead of a static list.
- ImprovementBills board and expenses board now load category names from the database, so admin-managed categories are always reflected.
v1.3.10
2026-04-27Bills list shows paid/unpaid/outstanding status badges and account badge before amount.
- ImprovementBill rows now show a Paid, Unpaid, or Outstanding status badge next to the bill name.
- ImprovementAccount badge moved to appear directly before the amount for better visual grouping.
- ImprovementMark paid/unpaid toggle button now has a data-title attribute for tooltip support.
- FixEditing a bill no longer clears the Account tag — account_id was being fetched from Supabase but dropped during data mapping.
v1.3.9
2026-04-27Free users get 1 permanent bill reminder (in-app & email); bill reminders now actually fire via cron.
- FeatureFree plan now allows 1 bill to have a due reminder (in-app and email).
- FeatureFree reminder slot is permanently locked to the first bill that fires a reminder — prevents swapping bills to abuse the free tier.
- FixBill reminders were never sent by the cron job — it only processed expense entries. Now the cron and notification system also process the bills table for all users.
- ImprovementBills add/edit modal shows a 0/1 or 1/1 free reminder badge; once permanently locked, shows a lock icon with 'Permanent' label on the owning bill and 'Slot locked' on all others.
- ImprovementBill row shows an amber lock chip when it permanently holds the free reminder slot.
- ImprovementSubscription pages (landing and account) updated to reflect the 1 bill reminder free tier benefit.
- ImprovementReminder emails now use the same branded HTML template as auth emails — logo, styled item cards, and a CTA button.
- FixReminder email dedupe log entries are now rolled back when SMTP send fails, so the next cron run or test trigger can retry instead of silently skipping.
- ImprovementConsolidated duplicate sendReminderEmail implementations into a single shared function in email.ts.
v1.3.8
2026-04-26Signup shows check-email success screen; login shows confirmation reminder for unverified accounts.
- ImprovementSignup now replaces the form with a dedicated check-your-email screen after successful registration instead of a small inline banner.
- ImprovementLogin now shows a clear amber warning with the email address when the user has not confirmed their email yet.
v1.3.7
2026-04-26Send a notification email when user changes their phone number.
- FeatureUsers now receive a confirmation email when their phone number is updated from the profile page.
v1.3.6
2026-04-26Fix dashboard chart showing zero savings for recurring savings entries; add go-to arrows on stat cards.
- FixMonthly breakdown chart now correctly includes recurring savings entries (those with a due date) in every month since they were created, matching how bills are counted.
- ImprovementAdded an ArrowUpRight icon to the top-right of each dashboard stat card to visually indicate they are clickable links.
v1.3.5
2026-04-26Bills add/edit modal now supports Account tags.
- ImprovementBills add and edit modals now include an Account tag selector, matching the Expenses modal.
v1.3.4
2026-04-26Fix quick-add expense form mobile layout and placeholder visibility.
- FixQuick-add expense form now stacks vertically on mobile, preventing button overlap.
- FixPlaceholder text in the expense name and amount inputs is now visible.
v1.3.3
2026-04-26Fix mobile search closing and iOS zoom issues.
- FixMobile search now closes when clicking outside the search area.
- FixMobile search input now uses 16px font size to prevent iOS auto-zoom on focus.
v1.3.2
2026-04-26Built-in Cash and Borrowed accounts appear for all users automatically.
- FeatureCash and Borrowed are now built-in accounts — they appear on the Accounts page for every user without needing to be created manually.
- ImprovementBuilt-in accounts show a 'Built-in' badge and cannot be edited or deleted.
- ImprovementAccounts stat card now counts only user-created accounts, not built-in ones.
v1.3.1
2026-04-26Add Expense modal and account tag selector in expense forms.
- FeatureAdded full Add Expense dialog matching the edit modal — with name, amount, account, category, date, and note fields.
- FeatureAccount tag chips now appear in both Add and Edit Expense modals, letting users assign a tagged account directly from the form.
- ImprovementQuick-add row (to-do style) revised — clean underline inputs with name, amount, and calendar icon at the right.
- ImprovementAccount tag chips also shown on each expense row and bill row for quick visual reference.
v1.3.0
2026-04-26Accounts page — label expenses and bills by bank or e-wallet account.
- FeatureNew Accounts page (/dashboard/accounts) to create named bank/e-wallet accounts with alias, bank name, tags, and color.
- FeatureAccounts can be tagged on individual expenses and bills via a new optional account selector in both add and edit forms.
- FeatureEach account card shows a combined this-month total of all tagged expenses and monthly bills.
- ImprovementAccounts query uses staleTime: Infinity — data is fetched once and refreshed only after mutations.
v1.2.1
2026-04-25Consistent page width and mobile layout for Bills and Expenses pages.
- ImprovementExpenses page stats cards and pie chart now use a responsive layout: stacked vertically on mobile, side-by-side on tablet and up.
- ImprovementBills page max width narrowed to match the Expenses page for a more consistent layout.
- ImprovementDashboard stat card 'Bills unpaid' replaced with 'Bills + Expenses' showing the combined monthly total.
v1.2.0
2026-04-25Welcome email for new users, in-app changelog page, and version display.
- FeatureWelcome email sent automatically to every new user on sign-up, with feature highlights and a CTA to the dashboard.
- FeatureNew 'What's New' changelog page (sidebar → What's New) showing release history with typed badges: Feature, Improvement, Fix, Hotfix.
- FeatureApp version number displayed next to the OmniTrak logo in the sidebar.
- ImprovementShared SMTP email utility (src/lib/email.ts) centralising transporter creation and reusable across future email types.
v1.1.0
2026-04-25Mobile UX overhaul, expenses page redesign, and Pro plan improvements.
- FeatureExpenses page: stat cards and paid-vs-unpaid pie chart layout matching the bills page for better mobile UX.
- FeatureMobile header: logo moved next to burger menu; search button expands full-width inline search with keyboard navigation.
- FeatureDesktop header: fully functional search bar with grouped results, arrow-key navigation, and outside-click dismiss.
- FeatureSearch index covering all app routes, calculators, account pages, and legal documents.
- FeatureDashboard random greeting — one of 10 phrases chosen per session instead of a static 'Hello'.
- FeaturePro subscription card: 🔥 Most Popular ribbon, larger scale, and ring highlight on both landing and account subscription pages.
- FeatureBottom navbar Home item uses House icon and only highlights on the exact /dashboard route.
- ImprovementDue dates clarified as a free feature; Pro plan now correctly lists email reminders as the exclusive benefit.
- ImprovementDashboard bills paid ring inner circle is now transparent instead of filled, giving a cleaner donut appearance.
- FixSubscription badge on the account menu no longer shows the previous account's tier after switching users — React Query cache is now cleared on every auth state change.
- FixApp logo image corrected.
- FixBills page and landing page layout fixes.
- FixDashboard summary display fixes.
- FixBills revamp: layout and data handling improvements.
v1.0.0
2026-01-01Initial public release of OmniTrak.
- FeatureDashboard with monthly cashflow overview, bills summary, and expense breakdown.
- FeatureExpense tracker with categories, CSV and Excel export.
- FeatureBills board with paid/unpaid tracking, due dates, and cadence support.
- FeatureGoals tracker for short-term and long-term savings targets.
- FeatureTo-Buy list and To-Do list with drag-and-drop reordering.
- FeatureDebt Payoff and Savings calculators.
- FeaturePro and Premium subscription plans with Stripe integration.
- FeaturePartner/shared access — invite another user to view your expenses.
- FeatureEmail bill reminders (Pro+).
- FeatureRent Tracker and Payment Tracker (Premium).
- FeatureDark mode and theme toggle.
- FeatureAdmin panel: users, categories, pricing, notifications, logs, reviews.