Install @docubook/flame and scaffold your first documentation site on Bun, Node.js, or Deno.
DocuBook Flame runs on Bun >= 1.1.0, Node.js >= 20.11, or Deno >= 2.x. The toolchain and CLI work identically across all three — pick the runtime you already use.
Quick Setup
bun
mkdir my-docs &&cd my-docs
bun add @docubook/flame
bunx flame init
bun run dev
bash
mkdir my-docs &&cd my-docs
npminstall @docubook/flame
npx flame init
npm run dev
bash
mkdir my-docs &&cd my-docs
deno add npm:@docubook/flame
deno run -A npm:@docubook/flame init
deno task dev
flame dev # Start development server with HMRflame build # Build for productionflame preview # Preview production buildflame deploy # Build + prepare for GitHub Pagesflame deploy --docker# Build + generate Docker filesflame init # Scaffold a new projectflame clean # Clean build artifactsflame --help# Show all commands
The CLI auto-detects your runtime and dispatches to the correct server implementation automatically — flame dev uses Bun.serve on Bun, Node HTTP on Node.js, and Deno HTTP on Deno. Override detection with the FLAME_RUNTIME environment variable:
shell
FLAME_RUNTIME=node flame dev # Force Node runtimeFLAME_RUNTIME=deno flame dev # Force Deno runtime
Scaffolded projects have these scripts in package.json:
When scaffolding on Deno, flame init also generates a deno.json with nodeModulesDir: "auto" and sets the scripts to use the npm: specifier.
Global Installation
bun
bun add-g @docubook/flame
bash
npminstall-g @docubook/flame
Deno does not support global npm packages. Use deno run -A npm:@docubook/flame <command> or add a task in deno.json.
After global install, run:
shell
flame init
flame dev
Runtime Notes
Area
Bun
Node.js
Deno
TypeScript
Runs .ts directly
Needs precompiled .docu/lib
Needs precompiled .docu/lib
First run
Instant (native TS)
compile-lib.mjs on first dev/build
compile-lib.mjs on first dev/build
Dev server
Bun.serve
Node HTTP + @docubook/runt
Deno HTTP + @docubook/runt
Build
Bun-native bundler
esbuild (via hydrate.node)
esbuild (via hydrate.node)
Spawn model
Direct script execution
In-process build.impl
In-process build.impl
Env override
FLAME_RUNTIME=bun
FLAME_RUNTIME=node
FLAME_RUNTIME=deno
The precompiled .docu/lib directory is gitignored in monorepo clones and generated automatically on first flame dev or flame build for non-Bun runtimes.