Built in the open

The tools we build Mozaic with.

Every app is the sum of the tools beneath it. Here is the full list of what Mozaic runs on: the languages, databases, cloud, and partners that turn your scattered accounts into one calm picture. We favour boring, proven, well-audited infrastructure on purpose: the kind that is still here in ten years.

9 categories · Read-only by design · Last reviewed 2026-06-23
01 · App & interface

One web app, rendered in your browser

The interface you use every day (every chart, table, and dashboard) is a single codebase compiled to run on the client.

Flutter (web): The entire app UI lives in one Flutter Web codebase, so the experience is consistent on every screen.

Dart: The language Flutter is written in; it powers all of the app's client-side logic.

02 · Backend & APIs

A Python API behind every request

Everything behind the app (the service that fetches, syncs, and serves your data) runs on a Python backend.

FastAPI: The web framework behind our REST API; it handles every request the app makes.

Python: The language our backend, account sync, and background jobs are written in.

Pydantic: Validates and shapes the data moving in and out of the API, so responses are always well-formed.

03 · Data & caching

A relational database, kept fast

Your accounts, holdings, and transactions live in a relational database; an in-memory store keeps the app responsive.

PostgreSQL: Our primary database. Every account, holding, and transaction is stored here.

Redis: In-memory caching and background-job queuing, so syncs and pages stay quick.

04 · Cloud & hosting

Google Cloud, hosted in Canada

Mozaic runs on Google Cloud in the Montréal region (northamerica-northeast1). Your data does not leave Canada.

Google Cloud Run: Runs the app and API as containers that scale with demand.

Cloud SQL: The managed, encrypted home for our PostgreSQL database.

Cloud Scheduler: Triggers the recurring jobs that sync accounts and send summaries on time.

Docker: Packages the app into reproducible containers, identical from a laptop to production.

05 · Account connections

Read-only links, brokered by specialists

Mozaic never sees your banking passwords. Connections are read-only and handled by SOC 2-audited providers, the same rails most consumer-finance apps use.

Plaid: Read-only connections to Canadian and US banks.

SnapTrade: Read-only connections to brokerages such as Wealthsimple, Questrade, and Interactive Brokers.

06 · Payments

Billing we never touch the card for

Subscriptions are billed in Canadian dollars, and your card details never reach our servers.

Stripe: Handles checkout, subscriptions, and billing; card details go straight to Stripe, never to us.

07 · Sign-in & accounts

Authentication managed by Google

We don't roll our own auth. Sign-in, sessions, and recovery run on Google's infrastructure.

Google Cloud Identity Platform: Sign-in, sessions, and optional two-factor authentication, backed by Google.

reCAPTCHA Enterprise: Protects sign-up and sign-in from automated abuse.

08 · Email

Transactional email, nothing more

We send the email you need: verification, security, and the summaries you opt into. No newsletters you didn't ask for.

Resend: Delivers authentication and account email: verification, sign-in links, and MFA.

SendGrid: Delivers product email such as your daily and weekly summaries.

09 · Reliability & monitoring

We want to know before you do

When something breaks, alerts reach us fast, so the fix is usually already in flight.

Sentry: Error monitoring and alerting across the app and backend.

Built to last.

No tool above is load-bearing for your trust. The read-only connections, per-user application-layer encryption (with keys held in Google Cloud KMS), and Canadian data residency described on our security page hold regardless of what we build with. They are written into the architecture, not the marketing.

Ready when you are.

See pricing