Bird
Raised Fist0
Supabasecloud~30 mins

Supabase CLI setup - Mini Project: Build & Apply

Choose your learning style10 modes available
Supabase CLI setup
📖 Scenario: You want to start a new Supabase project on your local machine to develop and test your database and API before deploying it to the cloud.
🎯 Goal: Set up the Supabase CLI locally, initialize a new Supabase project, and configure it for local development.
📋 What You'll Learn
Install Supabase CLI
Initialize a new Supabase project folder
Configure the Supabase project with default settings
Start the local Supabase development environment
💡 Why This Matters
🌍 Real World
Developers use the Supabase CLI to build and test backend services locally before deploying to production, speeding up development and reducing errors.
💼 Career
Knowing how to set up and use Supabase CLI is valuable for backend developers, cloud engineers, and full-stack developers working with modern open-source backend platforms.
Progress0 / 4 steps
1
Install Supabase CLI
Install the Supabase CLI by running the command npm install -g supabase in your terminal.
Supabase
Hint

Use npm to install the Supabase CLI globally so you can use the supabase command anywhere.

2
Initialize a new Supabase project
Create a new folder called supabase-project and run supabase init inside it to initialize the Supabase project.
Supabase
Hint

Use mkdir to create the folder, cd to enter it, then run supabase init to set up the project.

3
Configure Supabase project
Inside the supabase-project folder, open the supabase/config.toml file and set the project_id to local for local development.
Supabase
Hint

Open the config file and set project_id to local so Supabase knows this is a local project.

4
Start local Supabase development environment
Run supabase start inside the supabase-project folder to launch the local Supabase services.
Supabase
Hint

Use supabase start to run the local database and API services for development.

Practice

(1/5)
1. What is the primary purpose of the Supabase CLI?
easy
A. To manage your Supabase backend from the terminal
B. To create frontend user interfaces
C. To host websites on Supabase servers
D. To write SQL queries directly in the browser

Solution

  1. Step 1: Understand Supabase CLI role

    The Supabase CLI is designed to help developers manage backend services like databases and authentication from the command line.
  2. Step 2: Differentiate from frontend and hosting tools

    It does not create frontend interfaces or host websites; those are separate tasks.
  3. Final Answer:

    To manage your Supabase backend from the terminal -> Option A
  4. Quick Check:

    Supabase CLI = backend management [OK]
Hint: CLI means command line tool for backend tasks [OK]
Common Mistakes:
  • Confusing CLI with frontend tools
  • Thinking CLI hosts websites
  • Assuming CLI runs in browser
2. Which command correctly installs the Supabase CLI using npm?
easy
A. npm install -g supabase
B. npm supabase install
C. install npm supabase
D. npm get supabase

Solution

  1. Step 1: Recall npm global install syntax

    To install a package globally with npm, the command is npm install -g package-name.
  2. Step 2: Match correct command for Supabase CLI

    The correct command is npm install -g supabase. Other options do not follow npm syntax.
  3. Final Answer:

    npm install -g supabase -> Option A
  4. Quick Check:

    npm install -g = global install [OK]
Hint: npm install -g for global CLI tools [OK]
Common Mistakes:
  • Using wrong npm command order
  • Missing -g for global install
  • Typing commands in wrong sequence
3. What will happen if you run supabase start after initializing a project?
medium
A. It deploys your project to the cloud
B. It starts a local Supabase environment for testing
C. It deletes your local database
D. It opens the Supabase dashboard in a browser

Solution

  1. Step 1: Understand the supabase start command

    This command launches a local Supabase environment including database and API for development and testing.
  2. Step 2: Differentiate from deployment and other actions

    It does not deploy to cloud, delete data, or open dashboards automatically.
  3. Final Answer:

    It starts a local Supabase environment for testing -> Option B
  4. Quick Check:

    supabase start = local test environment [OK]
Hint: start means launch local environment, not deploy [OK]
Common Mistakes:
  • Confusing start with deploy
  • Expecting browser dashboard to open
  • Thinking it deletes data
4. You run supabase init but get an error saying 'Project already initialized'. What should you do?
medium
A. Delete the existing supabase folder before reinitializing
B. Reinstall the Supabase CLI
C. Run supabase start instead to launch the environment
D. Ignore the error and continue working

Solution

  1. Step 1: Understand the meaning of the error

    The error means the project was already set up with supabase init before, so reinitializing is unnecessary.
  2. Step 2: Choose the correct next step

    Instead of reinitializing, you should start the local environment with supabase start.
  3. Final Answer:

    Run supabase start instead to launch the environment -> Option C
  4. Quick Check:

    Already initialized? Use start to run [OK]
Hint: If initialized, start instead of init again [OK]
Common Mistakes:
  • Trying to init repeatedly
  • Deleting files unnecessarily
  • Reinstalling CLI without cause
5. You want to test changes locally and then deploy them. Which sequence of commands is correct?
hard
A. supabase start -> supabase init -> make changes -> supabase db push
B. supabase db push -> supabase start -> make changes -> supabase init
C. supabase stop -> supabase db push -> make changes -> supabase start
D. supabase init -> supabase start -> make changes -> supabase stop -> supabase db push

Solution

  1. Step 1: Initialize project before starting environment

    You must run supabase init once to set up the project files before starting the local environment.
  2. Step 2: Start environment, make changes, then stop and deploy

    After supabase start, you test changes locally. Then stop the environment with supabase stop before deploying with supabase db push.
  3. Final Answer:

    supabase init -> supabase start -> make changes -> supabase stop -> supabase db push -> Option D
  4. Quick Check:

    Init, start, test, stop, db push = correct flow [OK]
Hint: Init once, start to test, stop before db push [OK]
Common Mistakes:
  • Deploying before testing locally
  • Starting before initializing
  • Skipping stop before deploy
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard