Files
hackerspace.sh/DATABASE.md
T
v0andMoheeb Zara e36dee2601 feat: update main migration script and add sync migration for existing deployments
Main migration now canonical for fresh deployments; added sync migration for legacy DBs.

Co-authored-by: Moheeb Zara <1184415+virgilvox@users.noreply.github.com>
2026-03-11 06:36:43 +00:00

1.7 KiB

Database Setup

For full deployment instructions (Vercel, DigitalOcean App Platform, Docker on a Droplet), see docs/DEPLOYMENT.md.

Fresh deployment

Run one file in Supabase SQL Editor:

scripts/schema.sql

This creates the entire schema from scratch — all tables, enums, indexes, RLS policies, functions, and triggers. Idempotent, can be run multiple times safely.

Existing deployment migration

If you have a legacy Hackerspace database and want to sync it to the canonical schema:

scripts/012_canonical_sync.sql

This migration adds all missing columns, renames full_name → display_name, creates missing constraints, fixes the auth trigger, and updates all other tables to match the canonical schema. Also idempotent — safe to run multiple times.

Migration history (reference only)

Scripts 001_* through 011_* represent the evolution of the live database. Do not re-run them. They exist for historical reference.

What schema.sql contains

Section Contents
Extensions uuid-ossp
Enums 14 custom types (member_role, task_status, payment_platform, etc.)
Helper functions get_user_space_ids, user_has_role_in_space
Tables 13 tables: spaces, space_members, tasks, projects, payments, contacts, knowledge_base, secrets, area_leads, integrations, comms_channels, comms_messages, activity_log
Indexes 22 performance indexes on foreign keys and common filters
RLS policies Full row-level security on all tables (access gated by space membership)
Triggers on_space_created (auto-creates 4 default channels), on_auth_user_created (auth signup hook)