View all files | ||||
Develop locally and deploy to the Supabase Platform from your terminal.
Supabase CLI brings the Supabase Platform to your terminal. Run the full local stack, manage database migrations, deploy Edge Functions, generate types, and automate project workflows.
Linux packages are available from Releases. Community-maintained packages are also available through pkgx and Nixpkgs.
Create a Supabase workspace and start the local stack:
The local stack includes Postgres, Auth, Realtime, Storage, Edge Functions, and the Supabase APIs.
Start from a template:
Connect your local workspace to a hosted Supabase project:
Create migrations, compare schemas, and apply changes locally or to your linked project:
Build, serve, and deploy functions from the same project workspace:
Generate TypeScript types from your local database or linked project:
Use --help on any command to explore flags and examples:
This repository is a pnpm monorepo. The published package lives in apps/cli.
Useful source entry points:
| apps/cli | TypeScript/Bun CLI package |
| apps/cli-go | Go CLI source used by the legacy shell |
| packages/stack | Local Supabase stack runtime |
| packages/config | Config schema and generated types |
| packages/api | Typed Supabase Management API client |
After a fresh clone, install the reference repositories used for agent and developer inspection:
We love focused pull requests with a clear problem, a small surface area, and tests that match the user-facing behavior. Before opening a PR, run the checks for the workspace you touched.
PR titles must use conventional commits, for example:
Supabase CLI packages are released under the MIT license.