Foundations
What Supabase is, project setup and the CLI, tables/schema/migrations, and how the pieces fit together. Start →
Foundations
What Supabase is, project setup and the CLI, tables/schema/migrations, and how the pieces fit together. Start →
Auto-Generated API
PostgREST’s REST API, querying with the client SDK, RPC functions, and the Data API exposure model. Query →
Auth & Row Level Security
Authentication methods, sessions and JWTs, RLS fundamentals, and real-world RLS patterns and pitfalls. Secure →
Realtime & Storage
Postgres Changes, Broadcast and Presence, storage buckets and policies, and image transformations. Go live →
Edge Functions
Deno-based functions, invoking them, database access from a function, and background tasks with webhooks. Deploy →
Client Development
The supabase-js client, auth in the client, typed queries, and combining REST, Realtime, and Storage. Build →
Production & Ecosystem
Supavisor connection pooling, branching and migrations, performance and indexing, and a production checklist. Ship it →
It's just Postgres, plus
Every topic starts from the Postgres underneath — the auto-generated API, Realtime, and Storage are all layers on top of one real database, so what you learn transfers to plain Postgres too.
Current defaults, verified
Written against current Supabase behavior and checked against the official docs via context7 — including the Data API’s explicit exposure model and Realtime’s per-table opt-in that a lot of older tutorials skip.
Two security layers, not one
Not just “turn on RLS” but the full picture: what the Data API exposes at the table level, and what Row Level Security restricts at the row level — two different questions with two different answers.
Diagrams that explain
The Supabase architecture, the RLS decision path, the Realtime publication model, and the Supavisor pooling modes as theme-aware Mermaid diagrams. Bilingual (English / ไทย) with saved quiz progress.