为什么选择 Blume
框架本身就是模板
一些文档工具在你写下第一个字之前就先塞给你一整份代码库。另一些围绕你的内容搭建模板,却把你锁死在它们的托管服务里。Blume 两者都取:你唯一需要碰的就是内容本身。
Astro + Vite 的静态 HTML
核心主题不携带任何客户端框架 JS,页面开箱即可取得良好的 Core Web Vitals 评分。开发启动与热重载保持 Vite 原生手感,只有需要时才开启服务端特性。
AI 就绪你的 Markdown 同时喂饱人类与模型
自动产出 llms.txt 与 llms-full.txt,任意 .md URL 返回原始 Markdown,附带 JSON API、复制为 Markdown、打开聊天,以及一个托管的 MCP 服务器。
零配置一个文档文件夹就是完整项目
无需克隆起始模板,无需搭建 Astro 与 Tailwind,无需维护模板。导航从文件推导,搜索在开发与生产都能跑,主题只是几个令牌。
类型安全配置是真正的 TypeScript
blume.config.ts 与每一个 meta.ts 都经过 schema 校验,编辑器在构建之前就能发现拼写错误、非法取值与缺失字段。
工作原理
一个文件夹,就是一个完整项目
Blume 命令行加载 blume.config.ts,把内容扫描成一张图,并在 .blume/ 下生成一个隐藏的 Astro 项目,由它在开发与构建时驱动。
这个运行时是实现细节 —— 你写 Markdown,剩下的交给 Blume —— 直到你执行 blume eject 并亲手接管它。
- docs/
- index.mdx
- quickstart.md
- content/
- components.mdx
- blume.config.ts
- package.json
- 导航
- 本地搜索索引
- 主题与 OG 图片
- llms.txt / MCP
- 站点地图与 RSS
- dist/ 静态站点
开箱即用
特性
一个文档文件夹就是一个完整的项目。每一项都有合理的默认值,配置是你伸手去取的东西,而不是你的起点。
组件,无需导入
卡片、分栏、步骤、标签页、手风琴、徽章、代码组、文件树、类型表、实时预览、差异对比,在任意 MDX 页面直接用。
本地搜索
Orama 在开发与生产环境均运行,不需要任何托管服务;Pagefind、FlexSearch、Algolia、Typesense 只差一个适配器。
内容来源
本地文件与远程 MDX、GitHub Releases、Notion、Sanity、Contentful、Payload、Strapi 或任意自定义后端混进同一个站点。
国际化
把翻译好的文件就位,即可获得感知语言区域的路由、按语言划分的导航、翻译后的界面与 SEO。
SEO 与社交卡片
元信息、构建期渲染的 Open Graph 图片、站点地图、robots.txt、RSS 订阅源与 JSON-LD,全部内置。
API 参考
用 openapi()、asyncapi()、graphql() 把规范渲染成原生参考页面,每个操作一页,含 schema、鉴权与请求演练场。
导出
让读者把任意页面下载为 PDF 或 EPUB,完全在客户端完成,因此静态构建依然保持静态。
完全自定义
组件覆盖、React 孤岛、自定义页面、Tailwind v4 主题令牌,以及源组件注册表(blume add)。
命令行
全部命令,一处查完
通过包管理器运行 npx blume <命令>,或写进 package.json 脚本。
| 命令 | 说明 |
|---|---|
blume init [dir] | 搭建项目(默认交互式) |
blume dev | 启动带热重载的开发服务器 |
blume build | 构建静态(或服务端)站点 |
blume preview | 预览上一次构建的结果 |
blume add <item> | 从注册表安装一个源组件 |
blume sync | 重新拉取远程内容来源并重新生成 |
blume eject | 将运行时提升为独立的 Astro 应用 |
blume check | 用 astro check 对文档站点做类型检查 |
blume validate | 校验内部链接、锚点、资源与外部链接 |
blume doctor | 诊断配置与内容问题 |
blume audit | 审计已构建站点在 SEO 与健康度方面的问题 |
blume eval | 由智能体仅依据文档回答你的问题 |
blume translate | 用本地智能体 CLI 翻译成已配置的语言区域 |
blume version [id] | 把当前文档冻结为一个归档版本 |
blume migrate [source] | 借助 Claude Code 或 Codex 迁移到 Blume |
blume upgrade | 升级到新的大版本 |
部署
blume build 产出静态 HTML
输出到 dist/,可部署到任意静态托管:Vercel、Netlify、Cloudflare Pages、GitHub Pages、S3 + CloudFront 或任意 CDN。需要请求期特性(助手、MCP 服务器)时,在配置里指定托管适配器即可切换为服务端输出。
import { defineConfig } from "blume";
import { vercel } from "blume/deploy";
export default defineConfig({
deployment: vercel(),
});托管适配器
vercel()Vercelnetlify()Netlify Functionsnode()自托管的 Node 服务器、容器cloudflare()Cloudflare Workers 与 Pages
适配器永远不会被自动探测,必须在 blume.config.ts 中显式指定。
兼容性
Node22.12+包管理器Bun、pnpm、npm、yarn适配器Vercel、Netlify、Node、Cloudflare
文档
从这里开始读
开始
从零到上线,只需要几分钟。
内容
文件如何变成页面,导航如何自动推导。
内容来源
把远程 Markdown、CMS 与 Obsidian 仓库混进同一个站点。
配置
blume.config.ts 里的每一项功能开关。
可发现性
让搜索引擎、社交平台与编程智能体都能找到你。
API 参考
把规范文件渲染成原生参考页面。
命令行
每一个 blume 命令、参数与用法。
进阶
脱离默认形态的玩法。