Void is a CLI, platform, and full-stack SDK that unifies building & deploying apps.
Handle the full lifecycle of your project: building, deploying and managing your resources.
Animated example: void deploy. Build your app, apply migrations, and put it online on Cloudflare. One command. A complete transcript follows the player.
A React app with server routes and D1, already deployed directly to Cloudflare. Cloudflare is the saved deploy target; login and database setup are prepared. Build output is condensed.
$ void deploy blog → Cloudflare vite building client environment for production... ✓ 142 modules transformed. dist/client/assets/index-D9h2kL.js 38.42 kB ✓ built in 428ms ◇ Preparing deployment... ◇ Applying D1 migrations... ╭─ https://blog.orange-cloud.workers.dev ──╮ │ │ │ Worker: blog │ │ D1 migrations up to date │ ╰──────────────────────────────────────────╯ ✓ Successfully deployed!
Self-host your team's Void Platform & customize it to fit your security needs.
Let your team build and deploy with coding agents while admins retain control of Cloudflare access.
Manage users, projects, deployments, and platform health from the admin UI or CLI.
authbuildinvitationuserprojectdeploymentsignupsystememailworkerconfig authlistusestatusdiscoverdomain setinstallupgraderollbackrepairdisableenableuninstallFork and customize your own Void platform based on your team's security standards.
Use your favorite Vite framework, add the backend features you need, and let Void infer your resources.
Import what you need. Void provides local resources and provisions them on deploy.
Share types across your database, server loaders, and page components.
import { defineHandler, type InferProps } from 'void';
import { db } from 'void/db';
import { posts } from '@schema';
export const loader = defineHandler(async () => ({
posts: await db.select().from(posts),
}));
export type Props = InferProps<typeof loader>;Build with Void's adapters or keep your existing Vite framework.