Fircle landing pageFircle
Deep dive

Supabase Postgres configuration and setup

This page is the in-depth setup reference for Step 2 in the self-hosting guide. It follows the exact Supabase UI flow from creating an organization to copying Prisma-ready DATABASE_URL and DIRECT_URL values.

Values you need

  • 1. DATABASE_URL
  • 2. DIRECT_URL (Supabase labels this as Direct connection string)

Screenshot preview

Part 1

Create organization and project

  1. 1. In Supabase, create a new organization and set an organization name.
  2. 2. Click Create organization.
  3. 3. Create a new project and enter a project name.
  4. 4. Set a strong database password and store it safely.
  5. 5. Choose the region closest to your users, then click Create new project.
1. Create organization
2. Create project
Part 2

Open Connect and choose ORM

  1. 1. After the project is ready, open the project dashboard.
  2. 2. Click Connect in the top navigation.
  3. 3. In the Connect dialog, choose ORM.
  4. 4. Select Prisma.
3. Open Connect dialog
4. Copy Prisma env values

Why this path is recommended

The ORM + Prisma tab provides both values Fircle needs in one place, including the pooled DATABASE_URL and the direct DIRECT_URL.

Part 3

Copy and map DATABASE_URL plus DIRECT_URL

  1. 1. In the Prisma section, copy DATABASE_URL from the .env.local example.
  2. 2. Replace the placeholder password with your actual database password.
  3. 3. Keep the pooled host/port and query parameters intact for DATABASE_URL.
  4. 4. Copy DIRECT_URL from the same block and set it in your deployment environment.
  5. 5. Confirm both values are added to your host before deploying Fircle.
DATABASE_URL="postgresql://postgres:[YOUR_PASSWORD]@[YOUR_HOST]:6543/postgres?pgbouncer=true"
DIRECT_URL="postgresql://postgres:[YOUR_PASSWORD]@[YOUR_HOST]:5432/postgres"
Part 4

Post-deployment connectivity checks

  1. 1. Deploy the app with both DATABASE_URL and DIRECT_URL configured.
  2. 2. Open the deployed URL and continue setup at /auth/setup for fresh installs.
  3. 3. If database readiness fails, first verify the password value is not the placeholder.
  4. 4. Confirm DATABASE_URL is pooled and DIRECT_URL is the direct connection string.
  5. 5. Re-check host and ports if connection errors continue.

Common mistake

Leaving the placeholder password in the connection string is one of the easiest ways to fail first-boot setup.