51 lines
1.6 KiB
Markdown
51 lines
1.6 KiB
Markdown
# Supabase Directory
|
|
|
|
This directory stores SQL files for the project's Supabase/PostgreSQL database.
|
|
|
|
## Current Baseline
|
|
|
|
- `schema.sql` is the first registered database SQL file.
|
|
- Its documentation is in `docs/database/0001-initial-schema.md`.
|
|
- Its order is tracked in `docs/database/query-order.md`.
|
|
- Execution history is tracked in `docs/database/query-log.md`.
|
|
|
|
## Future Changes
|
|
|
|
Future schema changes should be added under:
|
|
|
|
```text
|
|
supabase/migrations/
|
|
```
|
|
|
|
Optional local/demo data should be added under:
|
|
|
|
```text
|
|
supabase/seeds/
|
|
```
|
|
|
|
Do not overwrite already executed SQL without also creating a new ordered migration and documenting why.
|
|
|
|
## Current Ordered SQL
|
|
|
|
1. `schema.sql`
|
|
2. `migrations/0002_add_freelancer_os_core_tables.sql`
|
|
3. `migrations/0003_add_project_planning_assets.sql`
|
|
4. `migrations/0004_add_business_os_tables.sql`
|
|
5. `migrations/0005_add_advanced_crm_tables.sql`
|
|
6. `migrations/0006_add_pgvector_and_embeddings.sql`
|
|
7. `migrations/0007_add_client_portal_tables.sql`
|
|
8. `migrations/0008_add_project_progress_and_quota.sql`
|
|
9. `migrations/0009_lock_registration_after_first_admin.sql`
|
|
10. `migrations/0010_allow_internal_auth_user_creation.sql`
|
|
11. Optional local/demo data: `seeds/0001_demo_freelancer_os_data.sql`
|
|
|
|
## Apply Migrations
|
|
|
|
From the repository root:
|
|
|
|
```bash
|
|
DATABASE_URL='postgresql://postgres:password@host:5432/postgres' bash ./scripts/apply-migrations.sh
|
|
```
|
|
|
|
The script applies all required schema files in canonical order. It requires either local `psql` or Docker. If `psql` is not installed, it runs `psql` through the `postgres:16-alpine` Docker image.
|