Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
Pricing
Open Source
Platform
cli · web
Type
TOOL
Latest release
blume@1.5.3
Date

About

Blume is a zero-config documentation site generator that turns a folder of Markdown or MDX files into a production-grade docs site. It generates and drives a hidden Astro project behind the scenes, providing navigation, search, Open Graph images, AI-ready features like llms.txt, and a rich component library — with no boilerplate to write.

What it does

Blume turns a folder of Markdown or MDX into a documentation website. The command line tool reads a typed config file, scans content into a graph, then generates and drives a hidden Astro project so you never write app boilerplate. Builds emit static HTML plus a local search index, with server output available when you want request time features like an in page assistant or a live endpoint coding agents can query. A promote step hands you the standalone Astro app if you outgrow the framework.

Why it's ranked here

The surface here is wider than most documentation generators, and that is the reason to spend time on it. Fifteen subcommands are registered, covering work other tools leave to you: link validation, an SEO audit of the built HTML, client bundle budgets that can fail a build, translation, and a command that has an agent answer your questions using only the docs. Agent access is a first class path: the server exposes four tools whose schemas drive both validation and discovery. The cost is a heavy dependency surface and a single copyright holder.

What's good

The agent facing server never rejects a tool call on argument shape: a bare string is accepted where a list is expected, and an out of range result limit is clamped into the allowed one to twenty window instead of erroring. The advertised tool schema is generated from the same definitions the runtime parses with, so the two cannot drift. The repository documents a per file line and function coverage gate enforced by the test runner config. Comments record why a low level protocol server was chosen over the convenience wrapper. Hosted search upload failures warn and let the build finish.

Tradeoffs

Weight is the trade. The published package declares close to eighty runtime dependencies, pulling in Astro, React, Tailwind, Shiki, Mermaid, Sharp and an OpenAPI parser whether your site uses them or not. Node 22.12 or newer is required. The most interesting commands, translation, documentation evals, and agent applied audit fixes, shell out to Claude Code or Codex, so they do nothing without one of those installed. Copyright sits with one person. Because the framework generates and owns the project, deep customization means component overrides or a one way exit to a plain Astro app.

How to use it well

Best fit is a team whose docs already live as Markdown beside the code, and who want coding agents reading those docs without scraping HTML. It earns a slot in continuous integration: link validation, the built site audit, and the JavaScript budget gates all signal through exit codes next to your test job. Take the exit path early if marketing pages and docs must share one codebase. It does not write or edit content for you, gives non technical authors no editing interface, and hosting stays your problem.

Technical notes+

The command line entry is packages/blume/bin/blume.mjs, which prefers a built Node bundle and falls back to the TypeScript source under a TS aware runtime; packages/blume/src/cli/index.ts registers fifteen subcommands with citty, loads env files before any command runs, and installs uncaughtException and unhandledRejection handlers that route through one internal error reporter. packages/blume/src/index.ts is the library face, exporting defineConfig, defineMeta, defineComponents and the config, navigation and diagnostic types, while packages/blume/package.json declares subpath exports for the Astro integration, Open Graph rendering, markdown, components, runtime and content sources, and marks Algolia, Typesense, Notion, Sanity and the AI SDK providers as optional peers. packages/blume/src/ai/mcp/server.ts builds a Model Context Protocol server on the low level SDK Server with four tools (navigation, page fetch, page listing, search), using zod preprocess pipes so a call never fails on argument shape and z.toJSONSchema emits the advertised schema from the same definitions. packages/blume/src/search/sync/index.ts pushes per page records to Algolia, Orama Cloud or Typesense after a build and downgrades any failure to a warning, and packages/blume/src/core/ui-packs/index.ts registers the locale packs merged onto English. packages/blume/src/astro/index.ts exposes the runtime generator and the Astro integration; apps/docs/blume.config.ts shows the project dogfooding itself with the Vercel adapter, server output, five locales, a GitHub releases content source and the MCP server enabled; and AGENTS.md records the architecture rules, including that only the CLI ships as a Node bundle while the Astro runtime ships as source.

Observed

License
MIT, single copyright holder
Language
TypeScript, ES modules throughout
Install surface
npm package exposing a single blume binary
Interfaces
CLI, importable library with subpath exports, and a Model Context Protocol server (HTTP plus a stdio subcommand)
Package managers
Bun, pnpm, npm and yarn all supported
Deploy targets
Static output, or server output via Vercel, Netlify, Node and Cloudflare adapters
Search
Local Orama by default; Pagefind, FlexSearch, Algolia, Typesense, Orama Cloud and Mixedbread are optional peers
Localization
Built-in locale packs merged onto English, community maintained
Repository shape
Bun and Turborepo monorepo: the published package plus a docs site built with the tool itself
Configuration
TypeScript config validated by a zod schema, authored through typed helpers

Read from README.md, package.json, packages/blume/package.json, packages/blume/src/index.ts, packages/blume/src/cli/index.ts, packages/blume/src/astro/index.ts, packages/blume/src/ai/mcp/server.ts, packages/blume/src/core/ui-packs/index.ts, packages/blume/src/search/sync/index.ts, packages/blume/bin/blume.mjs, apps/docs/blume.config.ts, apps/docs/content/docs/index.mdx, apps/docs/content/docs/reference/cli.mdx, LICENSE, AGENTS.md.

What it can do

  • Generate a documentation website from Markdown or MDX files

    Folder of Markdown or MDX filesProduction-grade documentation site

  • Auto-generate site navigation

    Markdown/MDX file structure and frontmatterStructured navigation menu for the docs site

  • Generate Open Graph images

    Documentation page metadata and contentOpen Graph preview images for social sharing

  • Generate an llms.txt file for AI consumption

    Documentation contentAI-ready llms.txt file summarizing site content

  • Provide full-text search across documentation

    Documentation site contentSearchable index and search UI for the docs site

  • Eject to a standalone Astro project

    Blume-managed documentation projectSelf-contained Astro project with full source code and no Blume dependency

  • Scaffold a documentation site with zero configuration

    Folder of Markdown or MDX filesFully configured Astro project generated and managed behind the scenes

Tags

docsdocumentationmarkdownmdxastrostatic-siteai-readytypescript

Tech Stack

Node.js

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.