Supabase CLI (v1)
Supabase is an open source Firebase alternative. We're building the features of Firebase using enterprise-grade open source tools.
This repository contains all the functionality for Supabase CLI.
- Running Supabase locally
- Managing database migrations
- Pushing your local changes to production
- Create and Deploy Supabase Functions
- Manage your Supabase Account
- Manage your Supabase Projects
- Generating types directly from your database schema
- Generating API and validation schemas from your database
Getting started
Install the CLI
NodeJS
Available via NPM as dev dependency. To install:
npm i supabase --save-dev
To run:
npx supabase -h
macOS
Available via Homebrew. To install:
brew install supabase/tap/supabase
To upgrade:
brew upgrade supabase
Windows
Available via Scoop. To install:
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
scoop install supabase
To upgrade:
scoop update supabase
Linux
Available via Homebrew and Linux packages.
via Homebrew
To install:
brew install supabase/tap/supabase
To upgrade:
brew upgrade supabase
via Linux packages
Linux packages are provided in Releases. To install, download the .apk
/.deb
/.rpm
/.pkg.tar.zst
file depending on your package manager and run the respective commands.
sudo apk add --allow-untrusted <...>.apk
sudo dpkg -i <...>.deb
sudo rpm -i <...>.rpm
sudo pacman -U <...>.pkg.tar.zst
You can also install the CLI via go modules without the help of package managers.
go install github.com/Redstoneguy129/cli@latest
Add a symlink to the binary in $PATH
for easier access:
ln -s "$(go env GOPATH)/cli" /usr/bin/supabase
This works on other non-standard Linux distros.
Run the CLI
supabase help
Docs
Command & config reference can be found here.
Breaking changes
The CLI is a WIP and we're still exploring the design, so expect a lot of breaking changes. We try to document migration steps in Releases. Please file an issue if these steps don't work!
Developing
To run from source:
# Go >= 1.18
go run . help