Agent-readable docs index: /llms.txt. Full docs in one file: /llms-full.txt. Download /docs.zip to grep all markdown files locally.

Cloudflare Workers

Holocron can be deployed to Cloudflare Workers for edge-rendered docs with global distribution.

Setup

Install wrangler and the Cloudflare Vite plugin:
bash
pnpm add -D wrangler @cloudflare/vite-plugin
Add the Cloudflare plugin after Holocron in vite.config.ts:
ts
import { cloudflare } from '@cloudflare/vite-plugin' import { holocron } from '@holocron.so/vite' import { defineConfig } from 'vite' export default defineConfig({ plugins: [ holocron(), cloudflare({ viteEnvironment: { name: 'rsc', childEnvironments: ['ssr'], }, }), ], })
Create a wrangler.json or wrangler.jsonc:
jsonc
{ "name": "my-docs", "main": "spiceflow/cloudflare-entrypoint", "compatibility_date": "2026-04-13", "compatibility_flags": ["nodejs_compat"] }

Build and deploy

bash
npx vite build npx wrangler deploy

Serving docs under a subpath

Set base in vite.config.ts to mount the whole site under a path prefix, for example when the docs live at example.com/docs behind a route:
ts
export default defineConfig({ base: '/docs', plugins: [holocron(), cloudflare({ /* ... */ })], })
Holocron nests the client build output under a folder matching the base, so Cloudflare serves /docs/assets/app.js from dist/client/docs/assets/app.js:
diagram
vite.config.ts build output request ┌───────────────────┐ ┌───────────────────────────┐ ┌────────────────────────┐ base: '/docs' │───────> dist/client/ GET /docs/assets/app.js .assetsignore └───────────┬────────────┘ HTML references docs/assets/app.js <───┼───────────────────┘ /docs/assets/* docs/icons/logo.svg served by the CDN, └───────────────────┘ └───────────────────────────┘ no Worker invocation
Cloudflare's Asset Worker looks paths up in the uploaded directory tree and never strips Vite's base, so this nesting is what makes subpath hosting work. It happens automatically; no ASSETS binding or extra config needed.

Custom entry with Workers

If you use a custom entry, your Spiceflow app runs as the Worker entry point. You can add Cloudflare-specific bindings (KV, D1, AI) alongside your docs.

Example project

See the example-cloudflare/ directory in the Holocron repo for a minimal Cloudflare Workers deployment.