-
Go to Supabase Dashboard: https://supabase.com/dashboard
-
Create New Project:
- Name:
hermetic-academy - Database Password: Create a strong password (save it!)
- Region: Choose closest to your users
- Pricing Plan: Free tier is perfect for start
- Name:
-
Wait 2-3 minutes for project provisioning
Option A: SQL Editor (Manual)
- In Supabase Dashboard → SQL Editor
- Open
C:/Users/ormus/projects/01-ACTIVE/hermetic-academy/supabase/migrations/001_initial_schema.sql - Copy ALL content
- Paste into SQL Editor
- Click "Run"
- ✅ Verify: Tables → You should see 5 tables (principles, experiences, user_progress, etc.)
Option B: Supabase MCP (If Configured)
# Claude will use mcp__supabase__apply_migration
# This requires the Supabase MCP to be configured with your project-
In Supabase Dashboard:
- Settings → API
-
Copy These Values:
- Project URL:
https://xxxxxxxxxxxxx.supabase.co anonpublic key:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...(very long string)
- Project URL:
-
In your project:
cd C:/Users/ormus/projects/01-ACTIVE/hermetic-academy -
Create
.env.local:NEXT_PUBLIC_SUPABASE_URL=https://xxxxxxxxxxxxx.supabase.co NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
-
Replace
xxxxxxxxxxxxxwith YOUR actual values
cd C:/Users/ormus/projects/01-ACTIVE/hermetic-academy
npm run devCheck browser console:
- ✅ No Supabase errors
- ✅ Homepage loads all 7 principles
- ✅ No connection warnings
Your database now has:
-
principles (7 rows)
- Core data for each Hermetic Principle
- Includes: name, title, subtitle, description, color, etc.
-
experiences (7+ rows)
- Interactive experiences for each principle
- Config for games, simulators, trackers
-
user_progress (empty initially)
- Tracks which principles users complete
- Includes reflections and timestamps
-
reflections (empty initially)
- User insights and discoveries
- Shareable community wisdom
-
wisdom_reactions (empty initially)
- Emoji reactions to shared reflections
- Community engagement (positive only)
✅ Enabled on all tables ✅ Public read access (principles, experiences) ✅ Authenticated write (user_progress, reflections) ✅ Privacy-respecting (users control their data)
-- Verify principles loaded
SELECT id, name, title FROM principles ORDER BY id;
-- Should return 7 rows:
-- 1. Mentalism
-- 2. Correspondence
-- 3. Vibration
-- 4. Polarity
-- 5. Rhythm
-- 6. Cause-Effect
-- 7. GenderRun npm run dev and check:
- Homepage shows all 7 principle cards
- Each card has title, subtitle, color
- Clicking a card navigates to
/principles/[slug]
- ❌ Check
.env.localexists - ❌ Check URL and key are correct (no spaces, full strings)
- ❌ Restart dev server (
Ctrl+C, thennpm run dev)
- ❌ Migration didn't run successfully
- ✅ Re-run SQL from
supabase/migrations/001_initial_schema.sql - ✅ Check SQL Editor for errors
- ❌ Wrong key copied (use
anonpublic key, notservice_role) - ✅ Re-copy from Settings → API →
anon public
- Supabase Dashboard → Authentication → Providers
- Enable Email (for simple auth) or Google/GitHub (for social)
- Configure in your app (patterns in HANDOFF-REPORT.md)
Principles and experiences are auto-seeded in the migration. ✅
If you want Claude Code to manage your database:
- Configure MCP with project URL and service role key
- Claude can then run migrations, queries, etc. automatically
✅ Supabase project created
✅ Database migration run successfully
✅ 5 tables exist with proper RLS
✅ .env.local configured
✅ npm run dev runs without errors
✅ Homepage displays all 7 principles
Status: Database ready for development! ⚡
Continue to: Test the app locally, then build interactive experiences!