Install the CLI, sign in, create a PostgreSQL project on fr-par-1 (Scaleway, Paris). Everything below also works from the web console and the REST API.
No credit card · Default region fr-par-1 (Scaleway, Paris) · PostgreSQL 17.4
The Lampion CLI drives the whole platform from your terminal. On your first sign-in, your personal organization is created and you become its owner.
# 1 · install the CLI (Homebrew) $ pip install lampion-cli # 2 · sign in — Google, GitHub, or email SSO $ export LAMPION_TOKEN=lmp_live_… signed in · personal org created · owner role
Three ways to sign up
You start on the Free plan (3 projects, 3 branches per project), with no credit card.
A project is a full PostgreSQL database: branching, monitoring, scale to zero, and backups built in. The default region is fr-par-1, hosted by Scaleway in Paris.
Clouds & regions
On creation, Lampion automatically provisions
# create a project in the fr-par-1 region $ lampion projects create my-app --region fr-par-1
{
"id": "abc123",
"name": "my-app",
"region": "fr-par-1",
"endpoint_id": "ep-morning-frost-84721",
"host": "db.lampion.cloud",
"port": 5432,
"connection_string": "postgresql://cloud_admin:••••
@db.lampion.cloud:5432/ep-morning-frost-84721.postgres?sslmode=require"
} Copy the connection string from the console or the response above, then connect to db.lampion.cloud:5432; the database name encodes your endpoint (ep-xxxx.postgres), which is how the proxy routes you. TLS is required — your data is encrypted in transit.
# direct connection $ psql "postgresql://cloud_admin:••••@db.lampion.cloud:5432/ep-morning-frost-84721.postgres?sslmode=require" psql (17.4) — SSL connection (protocol: TLSv1.3) postgres=>
# via the DATABASE_URL variable import pg from 'pg' const pool = new pg.Pool({ connectionString: process.env.DATABASE_URL, ssl: { rejectUnauthorized: true }, }) const { rows } = await pool.query('SELECT version()')
# via the DATABASE_URL variable import os, psycopg with psycopg.connect(os.environ["DATABASE_URL"]) as conn: with conn.cursor() as cur: cur.execute("SELECT version()") print(cur.fetchone())
Connection pooling — Lampion bundles a pooler in transaction mode. The TCP proxy handles multiplexing and wake-on-connect transparently.
Two ways to interact with your database: the web console SQL Editor, or directly via psql and your application client.
SQL Editor (web console)
# create a table, insert, read postgres=> CREATE TABLE users ( id SERIAL PRIMARY KEY, email TEXT UNIQUE, created_at TIMESTAMPTZ DEFAULT now() ); CREATE TABLE postgres=> INSERT INTO users (email) VALUES ('[email protected]'); INSERT 0 1 postgres=> SELECT * FROM users; id | email | created_at ----+-------------------+---------------------------- 1 | [email protected] | 2026-08-04 10:23:45.123+00
Scale to zero — after a few minutes of inactivity, the compute is suspended. The next connection wakes it up automatically, with no action on your part.
Branching is Lampion’s killer feature. Like git branch, but for your data: each branch is an instant CoW (Copy-on-Write) fork that shares unmodified pages with its parent branch.
Use cases
# instant CoW fork from main $ lampion branches create abc123 staging --parent abc123 → branch staging · db.lampion.cloud:5432/ep-staging.postgres
How it works
Every project has a monitoring dashboard accessible from the console, with no instrumentation to install.
Two complementary mechanisms: PITR (Point-In-Time Recovery) snapshots down to the LSN, and pg_dump export in standard SQL format.
Snapshots (PITR)
Capture your database’s exact state at a point in time via the pageserver’s LSN, then restore to a new branch. Your production data is never touched.
# capture a snapshot at the current LSN $ lampion backups create abc123 main before-migration → bk-42 · lsn 0/15A2C08 # restore to a new branch $ lampion backups restore abc123 bk-42 --name restored-bk-42 → branch restored-bk-42
pg_dump
Export your database in standard SQL format: migrating to another provider, archiving, or debugging. Table filtering available.
# export the whole database $ lampion dump abc123 ep-abc -o backup.sql # export a single table $ lampion dump abc123 ep-abc --table users -o users.sql
Lampion is built for teamwork. Invite colleagues and assign granular RBAC (Role-Based Access Control) roles.
| Role | Permissions | Use case |
|---|---|---|
| owner | Everything: create, delete, invitations, webhooks, audit. | Team admin |
| developer | Create/edit projects, branches, queries, API keys. | Day-to-day developer |
| viewer | Read-only (GET only). | Stakeholder, QA, monitoring |
| analyst | Read-only, anonymized branches, dedicated connection string (masked data). | Data analyst, contractor without PII |
Everything you do in the console can be done via the REST API. Create an API key in Settings › API Keys, then authenticate each request with a Bearer token.
# every request requires a Bearer token $ curl -H "Authorization: Bearer lmp_live_…" \ https://api.lampion.cloud/v1/projects
API key format
Full reference — 40+ endpoints covering projects, branches, computes, SQL, metrics, and webhooks in the API documentation.
You know the basics. Here’s how to get the most out of Lampion.
Each topic is detailed in the guides and API reference.