Deploy Guide
Option 1: Cloudflare Pages + Supabase (Recommended)
Prerequisites
- Node.js 18+ and npm
- Cloudflare account (free tier supported)
- Supabase account and project
- Wrangler CLI:
npm install -g wrangler
Step 1: Clone and Install
git clone https://github.com/boxmevibe/boxme_levelling.git
cd boxme_levelling
npm install
Step 2: Authenticate with Cloudflare
npx wrangler login
npx wrangler whoami
Step 3: Set Up Supabase
- Create a project at supabase.com
- Run the migrations in SQL Editor
- Note your project URL and service role key
Step 4: Build and Deploy
npm run build
npx wrangler pages deploy dist --project-name boxme-levelling
Step 5: Set Environment Variables
npx wrangler pages secret put SUPABASE_URL --project-name boxme-levelling
npx wrangler pages secret put SUPABASE_SERVICE_ROLE_KEY --project-name boxme-levelling
Step 6: Verify
# Test health
curl https://boxme-levelling.pages.dev/api/warehouses
# Test auth
curl -X POST https://boxme-levelling.pages.dev/api/auth/login \
-H "Content-Type: application/json" \
-d '{"username":"admin","password":"admin"}'
Option 2: Cloudflare Pages + D1 (SQLite)
Step 1: Create D1 Database
npx wrangler d1 create boxme-levelling-production
Step 2: Update wrangler.jsonc
{
"d1_databases": [{
"binding": "DB",
"database_name": "boxme-levelling-production",
"database_id": "YOUR_DATABASE_ID"
}]
}
Step 3: Run Migrations
npx wrangler d1 migrations apply boxme-levelling-production
Step 4: Build and Deploy
npm run build
npx wrangler pages deploy dist --project-name boxme-levelling
Local Development
npm install
npm run dev
# → http://localhost:5173
Updating
# After code changes
npm run build && npx wrangler pages deploy dist --project-name boxme-levelling
# After new migrations
npx wrangler d1 migrations apply boxme-levelling-production
npm run build && npx wrangler pages deploy dist --project-name boxme-levelling