$stack/supabase

Postgres, with the boring parts done

Supabase where a product needs a real relational database, auth and realtime without a platform team. It is Postgres underneath, which is why we are comfortable putting client data in it.

$supabase services

Three reasons we build on Supabase

Why Supabase

It gives a small team Postgres, auth, storage and realtime on day one, with no lock-in that matters — the data is standard Postgres and can leave. For heavily regulated workloads we build in your own cloud instead.

→Real Postgres: constraints, transactions, extensions→Row-level security enforced in the database→Auth, storage and realtime without extra services→Branching and migrations that fit a release process→An exit path, because it is standard Postgres

Schema and security

We design the schema and the row-level security policies together — most Supabase incidents we are called about are policy mistakes, not database ones.

→Schema design with constraints that hold→Row-level security policies written and tested→Migrations in version control, applied in CI→Roles, keys and service boundaries documented→Backups and restore tested, not assumed

Product features on top

Realtime collaboration, file handling, edge functions and search — built as product features with the same review as the rest of the codebase.

→Realtime features with conflict behaviour defined→Edge functions for webhooks and integrations→Full-text and vector search in the same database→Analytics reads separated from transactional load→Observability on queries, not just uptimeBook a call →
$data integrity

Data work you can audit

Schema, policies and migrations live in version control and are reviewed like application code. Nothing in production was applied by hand.

100%Tables covered by row-level security
0Migrations applied by hand in production
TestedRestore path, not just backups
2-4 wksTypical schema, auth and policy build

What we run alongside it

A short, deliberate list — each in production on a system we maintain. See the full partner stack.

SupabaseData platform partner
PostgreSQLCore data engine
VercelDelivery partner
Claude (Anthropic)AI platform partner
PineconeVector search
MetabaseAnalytics layer
CloudflareEdge, DNS and WAF

Clients we work with

Bayt Travel
Travel Secrets
DAX — Doha Express
Orangetheory Fitness
Nova Fertility
Octillion Global
Ornamint
Shubhra Krishan
IKISAKI
$case studies

Supabase case studies

Octillion product UI
ProductOctillion GlobalMulti-tenant data with row-level security per organisation, and realtime updates across a distributed team.
Research data console
Research dataNova FertilityResearch records with strict access policies, vector search for retrieval, and an audited restore path.

What we will not do

Supabase is not right for every data problem. These are the jobs we hand back.

$./data-review→
01Put a regulated workload on a shared platform when the client needs their own cloud.02Ship a table without row-level security and call it internal-only.03Use realtime where a refresh would do.04Run analytics queries against the transactional database.05Hand over a schema nobody but us can migrate.