Platform
Hosting & deploysPush to a branch, get a live linkDatabaseReal Postgres, one per appSign-inEmail and Google, users includedFile storageUploads, photos and documentsAI gatewayEvery model, with a hard spend cap
Resources
DocsGuides written for people who are newFor AI agentsClaude Code, Cursor, MCP, JSON CLICompareCamplax beside the stack it replacesPricingFrom $25/month plus prepaid creditsSupportA person answers, not a queue botPoliciesTerms, privacy and how we handle data Get started
Open in ChatGPT Open in Claude Last updated 2026-11-07

How Camplax works

What a project contains, where each piece runs, and why there are two domains.

Camplax replaces the usual two-vendor setup — a Vercel for the frontend and a Supabase for the data — with a single project. This page is the map: what a project contains, where it runs, and which tool reaches which part.

One project, nine parts

A project is the unit everything hangs off. Create one and all of this exists under one slug:

PartWhat it isWhere to read
CodeYour repo — connected to GitHub, or deployed from the CLIHosting and deploys
DeploysA queued build that ends with a running app; production plus a preview deployment per git branchHosting and deploys, Preview deployments
Postgres databasePostgres 18, one database per environment, always on, reached through DATABASE_URLPostgres database
AuthenticationBetter Auth running in your app: accounts, sessions, passkeys and OAuth providers, stored in your app's own PostgresAuthentication
Object storageFiles on Cloudflare R2, uploaded and downloaded through signed, expiring URLsObject storage
Environment variablesA vault for variables and secrets, with per-environment and per-branch overlaysEnvironment variables
Domains, DNS and SSLA free *.camplax.app address, plus your own domains with automatic SSL certificatesDomains, DNS and SSL
AIAn OpenAI-compatible gateway, paid from prepaid creditsAI gateway
BillingOne plan (Indie $25, Pro $50 or Scale $100 a month) plus one prepaid credit balance for every extraThe console's Billing page

Nothing here is a separate account. A user in your app is a row in your project's Postgres database, a file is under your project's prefix in object storage, and a deploy is your project's code — which is why "is this person subscribed?" is a query, not an integration.

Two stacks

There are two systems and it helps to know which one you are looking at.

The Camplax platform — the marketing site, the console at camplax.dev/app, and the API your CLI and agents call at camplax.dev/v1. This is Camplax's own infrastructure: it stores your project's settings, secrets, deploy queue and domain config, and it orchestrates everything below. You never deploy code into it.

Your app — what your deploys produce. Each running app is its own isolated service: its own compute, its own Postgres database, and its own prefix in object storage (Cloudflare R2), sitting behind Camplax's DNS and SSL certificates. Production never sleeps; a preview suspends when idle and wakes on its first request.

The practical consequence: the console can be down and your app keeps serving; your app can be broken and the console still works to fix it.

Fine print, for the curious: the control plane runs on Cloudflare Workers and D1; your app runs on a Camplax cell — each environment in its own Kubernetes namespace, production with its own Postgres cluster behind a PgBouncer pooler, previews usually sharing one small Postgres server per account, each with its own database and login — with Cloudflare R2 for files. For your app, Cloudflare is DNS, SSL and storage only — your code does not run on Workers.

Two domains, on purpose

The platform lives on camplax.dev. Your apps live on camplax.app — production at https://your-app.camplax.app, previews at https://branch--your-app.camplax.app, and your own custom domains pointed at the same place.

That split is a security boundary, not branding. A registrable domain is where cookies and browser storage stop: code running on camplax.app cannot set a cookie the console will read, cannot reach the platform's storage, and a problem on a customer domain can never touch camplax.dev. You will never be asked to do anything about it — just do not be surprised that the two never mix.

Environments

Every project has two runtime environments, decided by the branch a deploy came from:

  • Production — the default branch, serving https://your-app.camplax.app and any custom domains.
  • Preview — every other branch, at https://branch--your-app.camplax.app, with its own compute, its own database, its own storage prefix and its own environment-variable overlay. Preview deployments covers this in full.

Environment variables have a third layer, development, which is what camplax dev pulls to your laptop. The merge order — production, then preview, then a per-branch override — is in Environment variables.

Where each tool fits

ToolWhereWhat it is for
Consolecamplax.dev/appCreating projects, watching deploys, the database editor, domains, environment variables, users, billing
CLIcamplax (not on npm yet — run from the repository)login, link, dev, env pull/push, deploy, rollback, logs, db, probe — see CLI reference
APIcamplax.dev/v1Everything the console and CLI do, scriptable with a project API key
MCPhttps://camplax.dev/mcpThe same verbs for AI agents — see AI agents and MCP
These docscamplax.dev/docsWhat you are reading; also available as markdown mirrors and llms.txt

The console and the CLI are two faces of the same system — a deploy started in one shows up in the other, and both sit on the same API the MCP server uses.

Where to go next

Camplax

Hosting, database, sign-in and storage in one project. One login, one bill.

Platform
More
Legal
Company
© 2026 Camplax From $25 / month · credits stop at zero