Every push becomes a release.

Connect a repository or drop a zip. Static sites, Next.js and API services, built and versioned on every push.

$git push origin mainStart deploying

Watch a push go live.

Queued, fetching, building, deploying, live. The log streams while it happens, and you can cancel any time before deploying starts.

storefront · main · 4e1c9a2Queued
  1. 00:00Push received on main at 4e1c9a2
  2. 00:01Waiting for a build slot
  3. 00:02Cloning acme/storefront@4e1c9a2
  4. 00:04Recipe: nextjs (detected from next.config.ts)
  5. 00:05pnpm install --frozen-lockfile
  6. 00:19Packages: +612 resolved, reused cache
  7. 00:20next build
  8. 00:41Compiled successfully, 38 routes
  9. 00:43Uploading release v48
  10. 00:47Health check / returned 200
  11. 00:48v48 is live, v47 superseded

We read the repository once, when you create the project, and pick how it runs.

  • Static sitesYour build output, served as files.
    • Vite
    • Vue
    • Angular
    • Svelte
    • Astro
    • Nuxt
    • SvelteKit
    • Docusaurus
    • VitePress
    • Eleventy
    • Hexo
    • Ember
    • Preact
    • Webpack
    • Static HTML
  • React frameworksA managed build and runtime for React apps.
    • Next.js
    • Remix
    • React Router
    • Gatsby
    • Create React App
  • Web servicesFunction backends in Node, Python, Go or Java.
    • Node.js
    • Express
    • Fastify
    • Hono
    • Koa
    • NestJS
    • Python
    • FastAPI
    • Django
    • Flask
    • Sanic
    • Go
    • Gin
    • Java
    • Spring Boot
    • Quarkus

Live on storefront

v48

Every release stays on the rack. Roll back to any earlier one and it goes live again, no rebuild. Try it.

  • v48

    Checkout: show delivery dates

    4e1c9a2 · 2 min ago

    Live
  • v47

    Fix currency rounding on cart

    b07d311 · 3 h ago

  • v46

    Product grid on mobile

    91aa0fe · yesterday

  • v45

    Upgrade to Next 16

    e5c2d87 · 2 days ago

  • v44

    Search: debounce input

    3f9b6c0 · 4 days ago

Env vars are encrypted at rest and never listed in bulk. Each reveal leaves a trail.

  • DATABASE_URL

    ••••••••••••••

  • PAYSTACK_SECRET_KEY

    ••••••••••••••

  • SESSION_SECRET

    ••••••••••••••

  • NEXT_PUBLIC_SITE_NAME

    ••••••••••••••

Reveal audit

Who looked, which key, and when. Never the value.

  1. tola@acme.dev revealed PAYSTACK_SECRET_KEYyesterday
  2. you revealed DATABASE_URL4 days ago

Your next push could be live.

Prepaid credits, nothing renews automatically. See pricing

$git push origin mainStart deploying