The starting point
People keep money in several accounts and currencies, with budgets, recurring payments and investments on top. The product had to bring that together, explain the risks in plain language, and be there wherever the user works — browser, desktop and phone — without three separate products to maintain.
What we were responsible for
We built the whole product: the backend, the web dashboard, the desktop and mobile apps, the AI analysis, payments, the marketing site and the release pipeline.
What we built
-
Money in one place
Accounts, transactions and categories, budgets that roll over each month, recurring transactions generated daily, cash flow and investments across currencies.
-
Market data on a schedule
Scheduled jobs pull asset prices hourly, currency rates every six hours and economic index data daily, and record each portfolio's value every evening.
-
AI risk analysis that watches its cost
One entry point decides when the analysis runs: never on too little data, never twice at once, and again only when the user's data has actually changed. A short public questionnaire gives a first risk check before sign-up.
-
Three platforms, one release flow
The web app deploys on every merge. The desktop app shares its version, is code-signed and updates itself; the mobile app is built with Expo and gets over-the-air updates. Versions and changelogs come from conventional commits.
-
Subscriptions
Payments through a merchant of record, with signed webhooks.
Why it was hard
-
Live data on every platform
Dashboards on web, desktop and mobile update live from the same reactive backend.
-
AI spend under control
Results are tied to a fingerprint of the user's data and refreshed by a daily sweep, not on every page view.
-
Signing and updates
Desktop releases need Apple signing and an update key that must never be lost, or installed apps stop updating.
Where it stands
The web app was released with automatic deploys on every merge, and the desktop app shipped with signed builds that update themselves.