Supabase CLI

The Supabase CLI is the command-line tool for managing a Supabase project entirely from your own machine, maintained by Supabase Inc. It's tied for the #35 most-used dev tool in developer surveys at roughly 5.4% usage share. Teams reach for it because it spins up a full local copy of Postgres, Auth, and Storage via Docker, then lets you version-control your database schema as migration files and push them safely to production.

Quick facts
Type: Local development / database migration CLI
Made by: Supabase Inc.
License: Free / open-source (Apache 2.0)
Platforms/Hosting: Cross-platform (Windows, macOS, Linux), local Docker containers syncing to hosted Supabase projects
Primary use case: Running Supabase (Postgres + Auth + Storage) locally and managing versioned schema migrations
Jump to: ExampleGetting startedBest for

Example

A typical workflow: start the local stack, write a migration, then push it to your hosted project.

# create a new migration file with a timestamped name
supabase migration new add_profiles_table

# the CLI generates: supabase/migrations/20260714120000_add_profiles_table.sql
# edit that file, then apply it locally
supabase db reset

# push local migrations to your linked remote project
supabase db push

Getting started

Install the CLI, initialize a project folder, then start the local stack (requires Docker Desktop to be running).

# install via npm (or brew install supabase/tap/supabase on macOS)
npm install -g supabase

# initialize config in your repo
supabase init

# spin up Postgres, Auth, Storage, Studio locally
supabase start
Best for: Teams already building on Supabase who want to develop and test schema changes locally before they touch production, and who want their database migrations reviewed in pull requests like any other code.