Now in early access

From vibe
to live.

Connect your own agent to create or deploy your app to a real backend in seconds — authentication, per-user data persistence, and a live URL. No config. No infrastructure. Just your app, fully lit.

Built for humans
And for AI agents
Light up your first glow → Read the docs

backlit.run

Zero-config auth Per-user data silos Glow-scoped JWTs Agent deploy API Magic link · Google · Microsoft Australia + US regions window.backlit.data Private glows by default Zero-config auth Per-user data silos Glow-scoped JWTs Agent deploy API Magic link · Google · Microsoft Australia + US regions window.backlit.data Private glows by default

Three steps
to lit

01 — CONNECT

Connect the MCP server

Point Claude or ChatGPT at Backlit's MCP server — one URL, nothing to install. Then add the Backlit deploy host to your agent's allowed domains so it can push bundles straight to the edge.

MCP https://mcp.backlitdev.run/mcp
allow domain https://glow.backlitdev.run

02 — BUILD

Build or migrate

Just talk to your agent. Start something new, or bring an app you already have — Backlit wires window.backlit for auth, per-user data, and storage as it builds.

I'm building a Client Register with Backlit — let's go
Migrate this app to Backlit
On it — wiring window.backlit for auth + per-user data…

03 — IGNITE

Deploy & go lit

Ship from the same chat. Your agent stages a draft, you preview it, then promote — live on a backlit.run subdomain with your whole team on the allowlist.

Deploy this to Backlit and give me and my team access
Lit — live at bright-ledger.backlit.run. You and @yourteam.com are on the allowlist.

Your apps
are glows

Each deployed app is a glow — an isolated unit with its own Beacon (subdomain), auth config, data store, and API keys. A glow goes Dim while a draft is staged and previewable, Ignites to Lit to serve live traffic, and can be sent Dark — inactive, but holding every byte until you Reignite.

  • Autogenerated adjective-noun Beacons — your glow's address (e.g. swift-harbor.backlit.run)
  • Private by default — allowlisted emails only, no surprise public exposure
  • Stage a draft as Dim, preview it, then Ignite to Lit — Dark glows preserve every byte until you Reignite
  • Region-pinned data — your users' data stays in AU or US, never both
  • Account-wide storage — 500 MB free on Spark, up to 5 GB on Flood (stack more with Amp)
console.backlit.run
swift-harbor swift-harbor.backlit.run
private
Lit
golden-compass golden-compass.backlit.run
public
Lit
bright-anchor bright-anchor.backlit.run
private
Dim
quiet-lantern quiet-lantern.backlit.run
private
Dark
glow.backlit.run — REST openapi.yaml
# Agents discover and deploy without human input. # OpenAPI: https://backlit.run/openapi/glow.yaml

# Upload a new version — a bundle (gzipped tar of the site) curl -X POST https://glow.backlitdev.run/v1/glows/{id}/deploy \
  -H "Authorization: Bearer blk_..." \
  -F [email protected]

# Version is committed transactionally — the live pointer flips
# in the same transaction. No partial state for visitors.
# → live at https://{glow}.backlit.run

# Roll back instantly to any prior version
curl -X POST https://glow.backlitdev.run/v1/glows/{id}/rollback \
  -H "Authorization: Bearer blk_..." \
  -H "Content-Type: application/json" \
  -d '{"version_id":"v-2026-05-24-abc"}'

Agents deploy
without asking

Backlit is built for both surfaces. The REST deploy API lets AI agents discover the platform, create glows, push HTML, and manage allowlists — entirely without human assistance.

  • OpenAPI spec at a stable, discoverable URL: backlit.run/openapi/glow.yaml
  • Per-glow API keys — scoped, revocable, hash-only storage on the server
  • Deploy and rollback via REST today; full management surface (glow CRUD, allowlist, Dim/Reignite) ships next
  • capture write-only store for agent telemetry and form capture

Features

Everything a glow
needs to shine

🔐

Lens — auth, magic link & OAuth

Every Private glow gets a managed auth flow at auth.backlit.run. Magic link, Google, and Microsoft sign-in. Allowlist by exact email or domain pattern.

window.backlit.auth.user()
→ { email } | null
🗄️

Ember — three storage surfaces

Glow-shared state, per-user silos (email-hashed, fully isolated), and a write-only private store for telemetry and form capture. All region-pinned, no cross-region replication.

window.backlit.data.put(k, v, ct)
window.backlit.userdata.get(k)
window.backlit.capture.create(key, v, ct)
🌐

Public glows — open access

Flip a glow to Public and it opens to the world — no sign-in required. The edge mints an anonymous glow JWT on first visit. userdata.* is unavailable on public glows by design.

auth_mode: public  ← paid feature
🚀

Deploy API — version history

Every deploy creates an immutable version. Rollback to any prior version with a single API call. The live pointer flips transactionally; your users see no downtime.

POST /v1/glows/{id}/deploy
POST /v1/glows/{id}/rollback
🌍

Edge serving — two regions

Glows are served from Cloud Run in australia-southeast1 and us-central1. Assets and user data are region-pinned — data never crosses regions.

region: australia-southeast1
         | us-central1
🔑

Prism — custom Beacons & domains

Free accounts get an autogenerated adjective-noun Beacon like bright-anchor.backlit.run. Paid plans unlock a custom Beacon and your own domain via Cloudflare CNAME.

custom beacon  ← paid
custom domain ← paid

Simple, transparent pricing

Start free on Spark — Private glows, all three data surfaces, deploy + rollback, region pinning, and signing-key rotation. Move up to Beam or Flood to open glows to the public, brand them, raise your limits, and keep 30 days of history. Add storage by the pack with Amp.

Spark

Everything you need to ship a Private glow

$0

Forever free tier

  • Private glows with magic-link, Google, and Microsoft sign-in
  • Owner email on the allowlist
  • Autogenerated adjective-noun Beacon
  • All three SDK surfaces: data, userdata, capture
  • Region pinning (AU or US)
  • Deploy API with version history + rollback
  • Per-glow signing-key rotation
  • 500 MB storage · 1 GB transfer/mo · 5k requests/mo · 3 glows · 24h data history
Sign in to start

Flood

Go public, go multi-domain, scale up

$10 / mo

Billed monthly

  • Everything in Beam, plus —
  • Public glows — no sign-in required
  • Email-pattern allowlists (e.g. @yourteam.com)
  • Per-glow custom domain via Cloudflare CNAME
  • 5 GB storage · 20 GB transfer/mo · 250k requests/mo · 50 glows · 30-day history
Sign in to start

Amp

Extra storage packs for any paid plan

+$5 / mo per 25 GB

or +$10/mo per 100 GB

  • +25 GB storage for +$5/mo
  • +100 GB storage for +$10/mo
  • Stack extra storage on top of Beam or Flood
Add in Billing

Arc

Enterprise — built around your team

Talk to us

Custom pricing

  • Team access for multiple seats
  • SSO / SAML
  • Custom limits and dedicated support
Contact us

Need team access, SSO/SAML, or custom limits? Reach out through the in-app support channel in the console and we'll size a plan around your team.

Light up your
first glow today

No credit card. No backend knowledge. Drop your email and we'll send your early-access invite.

Submitting opens your mail client — we don't store your address until you send.