# Supabase CLI

> Runs the Supabase stack locally, manages Postgres migrations, deploys Edge Functions, and generates TypeScript types from your database schema.

Stars: 2.4k · Language: TypeScript · Categories: Dev Tools

- Repository: https://github.com/supabase/cli
- Website: https://supabase.com/docs/reference/cli/about
- Page: https://www.trmn.sh/tools/supabase-cli

## Install

- Homebrew: `brew install supabase/tap/supabase`
- npm: `npm install -D supabase`
- Scoop: `scoop bucket add supabase https://github.com/supabase/scoop-bucket.git`
- Scoop: `scoop install supabase`

## Overview

Supabase CLI is a command-line tool for developing against the Supabase Platform from a terminal. It runs a local Supabase stack (Postgres, Auth, Realtime, Storage, Edge Functions, and the Supabase APIs) via `supabase init`, `supabase start`, and `supabase status`, and can scaffold a project from a template with `supabase bootstrap`.

For database work, it creates migrations (`supabase migration new`), compares schemas (`supabase db diff`), and applies changes with `supabase db push` or `supabase db reset`, either locally or against a linked hosted project. `supabase login` and `supabase link` connect a local workspace to a hosted Supabase project.

It also handles Edge Functions (`functions new`, `functions serve`, `functions deploy`) and generates TypeScript types from a local or linked database with `supabase gen types --local` or `--linked`. Every command supports `--help` for flags and examples.

It is aimed at developers building on Supabase who want local development and deployment in one workflow. It installs through npm, Homebrew, Scoop, or Linux packages (.apk, .deb, .rpm, .pkg.tar.zst), with beta channels for npm, Homebrew, and Scoop.

### Installation

```bash
# via Homebrew
brew install supabase/tap/supabase
```

```bash
# via npm
npm install -D supabase
```

```bash
# via Scoop
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
scoop install supabase
```

## Alternatives

- [concurrently](https://www.trmn.sh/tools/concurrently.md): Node.js CLI that runs multiple shell commands in parallel with prefixed, colored output and options to kill or restart processes. Works on Windows. (TypeScript, 7.9k stars)
- [npm-check-updates](https://www.trmn.sh/tools/npm-check-updates.md): CLI that upgrades package.json dependencies to their latest versions, preserving semver range operators. Works with npm, yarn, pnpm, deno, and bun. (TypeScript, 10.3k stars)
- [tsx](https://www.trmn.sh/tools/tsx.md): TypeScript Execute (tsx): a CLI for running TypeScript files directly in Node.js. (TypeScript, 12.2k stars)
- [Vercel CLI](https://www.trmn.sh/tools/vercel-cli.md): Command-line interface for the Vercel platform: deploy projects, run them locally with vercel dev, and manage deployments from the terminal. (TypeScript, 16.5k stars)
- [Angular CLI](https://www.trmn.sh/tools/angular-cli.md): Command-line tool for creating, serving, scaffolding, and maintaining Angular applications and workspaces via the ng command. (TypeScript, 27.0k stars)

---

Canonical: https://www.trmn.sh/tools/supabase-cli
