Skip to main content

๐Ÿ’ป Windows Installation Guide

This guide will walk you through setting up your development environment on Windows. Please follow each step carefully to ensure a smooth setup process.

๐Ÿ“‹ Prerequisitesโ€‹

Before you begin, ensure your system meets these requirements:

  • Windows 10/11 (64-bit)
  • At least 8GB RAM (16GB recommended)
  • Administrative access

๐Ÿš€ Installation Stepsโ€‹

1. Node.js Setupโ€‹

We recommend using Node.js version 22.x.x or later. You have two options:

NVM (Node Version Manager) helps you manage multiple Node.js versions easily:

  1. Install nvm-windows
  2. Open PowerShell as administrator and run:
    nvm install 22.14.0
    nvm use 22.14.0

Option B: Direct Installationโ€‹

If you prefer a simpler setup:

  1. Download Node.js LTS from official website
  2. Run the installer
  3. Verify installation:
    node --version

2. Docker Environment Setupโ€‹

Understanding Docker's Roleโ€‹

Docker is required for running Supabase locally. While this is not a strict requirement, it is recommended to use Docker for local development. You don't need to know Docker to use Supabase, you simply need to have it running so that you can spin up the services locally.

Docker is essential for our development environment because:

  • It runs our Supabase database and related services
  • Ensures consistent development environment across team members
  • Manages multiple services (database, auth, storage) efficiently

Preparing for Docker Installationโ€‹

  1. Check Virtualization Support:

    • Open Task Manager (Ctrl + Shift + Esc)
    • Go to "Performance" tab
    • Look for "Virtualization" status
    • If disabled:
      1. Restart your PC
      2. Enter BIOS (usually F2 or Del key)
      3. Enable "Intel VT-x", "AMD-V", or "Virtualization Technology"
      4. Save and restart
  2. Install Docker Desktop:

    • Download from Docker website
    • During installation:
      • Accept WSL 2 installation if prompted
      • Enable "Add to PATH" option
    • After installation:
      • Open Docker Desktop
      • Go to Settings > Resources
      • Allocate 4-6GB memory for best performance

3. Supabase CLI Installationโ€‹

The Supabase CLI allows you to run the entire Supabase stack locally and manage your Supabase projects. For detailed information, refer to the official Supabase CLI documentation.

  1. Install Scoop (package manager for Windows):

    # Open PowerShell as administrator and run:
    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    irm get.scoop.sh | iex
  2. Install Supabase CLI:

    scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
    scoop install supabase
  3. Verify Installation:

    supabase -v

    You should see the installed version number.

  4. Understanding Supabase Services:

    When you start Supabase locally, you'll have access to these services:

    # Default Service URLs
    API URL: http://localhost:54321 # Supabase API endpoint
    DB URL: postgresql://postgres:postgres@localhost:54322/postgres
    Studio URL: http://localhost:54323 # Supabase Studio UI
    Inbucket URL: http://localhost:54324 # Email testing interface

    ๐Ÿ’ก Note: The first time you run pnpm web:supabase:start, it will download several Docker images. This might take a few minutes depending on your internet connection.

4. Project Setupโ€‹

  1. Clone Repository:

    # Using HTTPS (Recommended)
    git clone https://github.com/themeselection/<OUR_REPO_NAME>.git

    # Or using SSH (if configured)
    git clone git@github.com:themeselection/<OUR_REPO_NAME>.git

    # Navigate to project directory
    cd jetship-nextjs-saas-boilerplate
  2. Set Up Git Remote:

    # Remove existing remote (if any)
    git remote rm origin

    # Add upstream
    git remote add <UPSTREAM> https://github.com/themeselection/<OUR_REPO_NAME>.git

    # Once you have your repository URL, add it as the origin
    git remote add origin <your-repository-url>

    # Keeping your repository up to date
    git pull upstream main

    ๐Ÿ’ก Why set upstream?

    • Keeps your fork in sync with our main repository
    • Allows you to pull updates and bug fixes
    • Helps manage your custom changes separately
  3. Install Dependencies:

    # From project root
    pnpm install
  4. Start Supabase:

    pnpm web:supabase:start --ignore-health-check

    โš ๏ธ First run may take several minutes to download Docker images

  5. Start Development Server:

    pnpm dev
  6. InBucket Email Server:

    # Access InBucket at
    http://localhost:54324

    ๐Ÿ’ก Important: InBucket is a test mail server that captures all emails sent during local development. You'll need this for:

    • Testing Supabase Auth emails (signup, password reset, etc.)
    • Viewing transactional emails
    • Debugging email templates

    We recommend bookmarking the InBucket URL as you'll need it frequently during development.

โšก Performance Tipsโ€‹

Docker Optimizationโ€‹

  • Close unnecessary applications
  • Keep only required Docker containers running
  • Consider stopping Supabase when not coding

๐ŸŽ‰ Verification Stepsโ€‹

  1. Open http://localhost:3000 - Main application
  2. Visit http://localhost:54323 - Supabase Studio
  3. Ensure no errors in Docker Desktop

Happy Coding! ๐Ÿš€