Flare
Batteries for Void apps on Cloudflare. Void owns dev, build, routing, auth, the database and deploys; Flare adds the rest a business app needs.
Flare makes Void batteries-included: roles and tenancy, an audit log, jobs, search, CSV, i18n, feature flags, API keys, an MCP server and an admin. It does this the same way in every app, so every app’s code looks the same.
Each plugin is optional and touches your app only through files you own: an
import, a table re-export in db/schema.ts, an option in auth.ts, or a
one-line route file. Nothing to eject.
pnpm dlx @recranet/flare create my-appPlugins
Section titled “Plugins”Auth and access
Section titled “Auth and access”| Plugin | What |
|---|---|
access |
Owner, admin, member and viewer roles on Better Auth’s organizations; requireMember(c, permission) |
api-keys |
Per-organization API keys: a key acts as its member on the JSON API (x-api-key), optionally limited to fewer actions |
rate-limit |
Middleware on a Workers rate-limiting binding, per session, user, organization plus IP, IP or your own key; 429 with Retry-After |
turnstile |
Cloudflare Turnstile on Better Auth’s sign-in, sign-up and password reset; off without a secret |
| Plugin | What |
|---|---|
admin |
A table admin over the app’s Drizzle tables behind access; references shown by name |
audit |
Who changed what per organization, written in the change’s batch; revisions and a sent-mail log as their own subpaths |
csv |
CSV import and export validated with the resource’s Zod schema, sized for D1 |
flags |
Feature flags declared in code, switched per organization, user, or user in an organization in D1 |
i18n |
Translations for pages and server messages on Intl, with plurals, selects and a cookie override |
search |
Full-text search per organization on D1’s FTS5; defineList for a list route’s cursor, search, filters and sort |
Background
Section titled “Background”| Plugin | What |
|---|---|
jobs |
Named jobs on schedules from one cron: leases, a run history, “Run now”, fan-out over a queue |
AI and MCP
Section titled “AI and MCP”| Plugin | What |
|---|---|
mcp |
An MCP server at /mcp with OAuth 2.1 sign-in and defineTool with Zod inputs |
Planned: resource (a tenant-scoped resource’s table, schemas and routes) and
openapi (an OpenAPI document from the routes’ Zod schemas).
Why each plugin exists, and what was left out to stay close to the platform: Decisions.