FOLIO · CONTENT-AS-INTERFACE · MIT · v1.0

Notes that bloom.
Write prose, the rest grows itself.

Charts, diagrams, illustrations and live widgets grow inline from natural-language description. One source, three audiences: humans read, LLMs generate, agents query.

npx @folio-cli/folio build article.md
▶ Open Playground Read Docs

What it does

//insert-chart

Charts from prose

Describe a chart in plain language → LLM produces a Vega-Lite spec → browser renders interactively.

::: /插入图表 引用@销售
柱状图 X 季度 Y 销售
高亮 Q4
:::
//insert-diagram

Diagrams from prose

Describe a flow → LLM produces Mermaid → browser renders.

::: /插入流程图
用户登录:输入 → 校验 →
成功跳首页/失败提示
:::
//insert-interactive

Interactive widgets

LLM picks a widget (filterable table, tabs, slider calc, accordion) and fills its config.

::: /插入交互 引用@销售
可筛选可排序的销售明细
:::

Who uses it

AGENTS

For agents

One MCP server config and your agent gets md2html_build + md2html_publish tool calls that return URLs.

{
  "mcpServers": {
    "folio": {
      "command": "npx",
      "args": ["@folio-cli/folio-mcp"]
    }
  }
}
HUMANS

For humans

CLI + local dev server. Write markdown, save, browser auto-reloads.

$ folio dev article.md
✓ http://localhost:5173

3 steps to start

  1. 01

    Install

    npm install -g @folio-cli/folio
  2. 02

    Write

    # My article
    ::: /插入流程图
    登录流程:…
    :::
  3. 03

    Build

    $ folio build article.md
    ✓ article.html