Migration Status
Work in Progress
This documentation is actively maintained. Features described here may change as the platform evolves. Last reviewed: February 2025.
Production is being migrated from the legacy Supabase stack to the same architecture used by Development and Operations.
Target Architecture
| Component | Current (Legacy) | Target |
|---|---|---|
| Database | Supabase PostgreSQL | Neon PostgreSQL via Drizzle ORM |
| Authentication | Supabase Auth | NextAuth.js (Auth.js v5) |
| Storage | Supabase Storage | Cloudflare R2 |
| Realtime | — | PartyKit |
Migration Scope
The migration covers:
- 146 source files with Supabase references
- ~1,257 individual Supabase calls across the codebase
- Authentication flows (login, session management, middleware)
- Database queries (all API routes and server actions)
- File storage (avatars, documents, payment proofs)
- Row-level security policies → application-level authorization
Reference Implementations
The migration follows patterns already established in:
- Development — Development/project management app (fully migrated)
- Operations — Operations/production app (fully migrated)
These apps serve as reference implementations for auth flows, database access patterns, and storage handling.
What This Means for Users
During the migration period:
- The sales module continues to function normally
- No changes to how you use the features
- Some features may be temporarily unavailable during cutover
- Data will be preserved throughout the migration
tip
If you encounter any issues during the migration period, report them through the support channel. Include "migration" in your report to help the team prioritize.