๐ป 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:
Option A: Using NVM (Recommended)โ
NVM (Node Version Manager) helps you manage multiple Node.js versions easily:
- Install nvm-windows
- 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:
- Download Node.js LTS from official website
- Run the installer
- 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โ
-
Check Virtualization Support:
- Open Task Manager (Ctrl + Shift + Esc)
- Go to "Performance" tab
- Look for "Virtualization" status
- If disabled:
- Restart your PC
- Enter BIOS (usually F2 or Del key)
- Enable "Intel VT-x", "AMD-V", or "Virtualization Technology"
- Save and restart
-
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.
-
Install Scoop (package manager for Windows):
# Open PowerShell as administrator and run:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex -
Install Supabase CLI:
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git
scoop install supabase -
Verify Installation:
supabase -v
You should see the installed version number.
-
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โ
-
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 -
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
-
Install Dependencies:
# From project root
pnpm install -
Start Supabase:
pnpm web:supabase:start --ignore-health-check
โ ๏ธ First run may take several minutes to download Docker images
-
Start Development Server:
pnpm dev
-
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โ
- Open
http://localhost:3000
- Main application - Visit
http://localhost:54323
- Supabase Studio - Ensure no errors in Docker Desktop
Happy Coding! ๐