Basilic
Architecture

Portability Strategy

Shipped deploy path is Vercel + Supabase. The stack is standard HTTP, Node, and Postgres so you can move later.

The shipped path is Vercel + Supabase. GCP and AWS are not first-class deploy targets (product non-goal). The runtime is still ordinary Node, Fastify HTTP, Next.js, and PostgreSQL, so a later move is a host change, not a rewrite.

Do not read this page as “configure GCP or AWS from this repo.” Those remain unresolved.

What is portable

  • Runtime (Node.js 24.x, LTS Krypton): Runs on Vercel, a VPS, or a container with no platform-specific application code.
  • API (Fastify): Standard HTTP. Serverless function, container, or VM.
  • Web (Next.js): Vercel or self-hosted Node. Avoid vendor-only features if you expect to leave Vercel.
  • Database (PostgreSQL + Drizzle): Switch DATABASE_URL. Local Product Ready uses Supabase CLI Postgres. Preview migrations require RUN_PG_MIGRATE=true and an isolated DATABASE_URL; they cannot target a shared database.

Deployment options

Preview migrate requires RUN_PG_MIGRATE=true and an isolated DATABASE_URL. Configure environment variables and deploy via the documented Vercel and Supabase flows.

On this page