Supabase

The Postgres development platform with auth, storage, realtime and edge functions built in.

Stars
115k
Forks
15.1k
Licence
Apache-2.0
Language
TypeScript
Updated

At a glance

  • A full PostgreSQL database for every project, not a proprietary datastore
  • REST and GraphQL APIs generated from your schema
  • Row Level Security ties authorisation to the database itself
  • Realtime change streams over WebSockets
  • pgvector support for embeddings and similarity search

Get started

Start a local stacknpx supabase init && npx supabase start

What it is

Supabase is a backend platform assembled around PostgreSQL. Instead of inventing a new database, it takes Postgres and wraps it with the services most applications need on day one: authentication, auto-generated APIs, file storage, realtime subscriptions and serverless functions.

Each piece is a separate open source project — PostgREST for the REST API, GoTrue for auth, Realtime (written in Elixir) for change streams — orchestrated behind a single dashboard and client library.

Why it stands out

The central bet is that Postgres is enough. Authorisation is expressed as Row Level Security policies, so the same rules apply whether a request arrives through the API, a function or a direct connection. Because it is ordinary Postgres, extensions such as pgvector and PostGIS work as they would anywhere else, and leaving means running pg_dump.

Who it is for

Teams that want Firebase-style speed without giving up SQL, relational modelling or the option to self-host.

Questions

Is Supabase really open source?

Yes. The platform is assembled from open source components, most under Apache-2.0 or MIT, and the whole stack can be self-hosted with Docker.

Can I migrate away from Supabase?

Your data lives in a standard PostgreSQL database, so you can dump it with pg_dump and restore it on any Postgres host.