为 Claude 等编程智能体提供的技能,可将简短 JSON 描述转换为可交互、带动画的图表,并导出多种格式。
ivarvong/lantern
一个零依赖的 TypeScript 库,用于制作可逐步播放的动画代码讲解,输出 SVG,可在浏览器、Cloudflare Workers 或 Node 中运行。
- Star
- 247
- Fork
- 6
- 未关闭 Issue
- 2
- 最近提交
- 11天前
这是什么?
Lantern 是对 Python 动画引擎 manim 核心模型的 JavaScript/TypeScript 移植,用于把代码变更以动画方式讲清楚。场景是一个带异步 construct() 方法的类,在其中声明步骤和动画。每个步骤都可以通过 ?scene=&step= 这样的链接直接定位,每个场景还能输出文本形式和结构化的状态轨迹,便于 Agent 读取。
库本身没有运行时依赖,输出 SVG。在浏览器中,它会在每一帧动画时更新实时 DOM 中的 SVG 元素;在 Cloudflare Workers 或 Node 中则返回 SVG 字符串。文字以内嵌字形轮廓的方式渲染,不依赖宿主机安装的字体。图表可以用 Mermaid 流程图描述,也可以用包含节点、连线、代码和操作的 JSON 文档描述;Worker 中的 HTTP API 把这些能力暴露为渲染接口。
核心功能
- 01动画步骤可按场景和步骤名直接用链接定位
- 02在浏览器中以实时 DOM 渲染 SVG,在 Workers 和 Node 中输出字符串
- 03文字使用内嵌字形轮廓渲染,不依赖本机字体
- 04支持解析 Mermaid 流程图,也支持用 JSON 文档描述场景
- 05除 SVG 和逐帧导出外,还提供文本、状态轨迹和索引输出
- 06在 Cloudflare Workers 上提供 HTTP API,可渲染 JSON 描述的场景
适用场景
- 制作可分享链接,逐步带领评审者理解一次代码变更
- 基于 Mermaid 或 JSON 生成请求流程或架构的动画图示
- 在服务端直接输出 SVG 讲解帧,无需无头浏览器
- 为 AI Agent 提供动画讲解的结构化文本和状态轨迹
快速上手
- 1
克隆仓库
git clone https://github.com/ivarvong/lantern && cd lantern - 2
安装依赖
npm install - 3
启动开发服务器并打开示例场景
npm run dev
使用前须知
- 尚未发布到 npm,需要克隆仓库才能使用。
- 运行工具和测试需要 Node 24,以直接执行 TypeScript。
- 目前不支持 3D、布尔路径运算、LaTeX 以及匹配式变形(TransformMatchingShapes)。
收录于专题
标签
常见问题
- lantern 是什么?
- 一个零依赖的 TypeScript 库,用于制作可逐步播放的动画代码讲解,输出 SVG,可在浏览器、Cloudflare Workers 或 Node 中运行。 Lantern 是对 Python 动画引擎 manim 核心模型的 JavaScript/TypeScript 移植,用于把代码变更以动画方式讲清楚。场景是一个带异步 construct() 方法的类,在其中声明步骤和动画。每个步骤都可以通过 ?scene=&step= 这样的链接直接定位,每个场景还能输出文本形式和结构化的状态轨迹,便于 Agent 读取。
- lantern 可以免费使用吗?用的什么许可证?
- lantern 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- lantern 还在维护吗?
- 活跃维护中。lantern 最近一次提交是在 2026年10月27日。
- lantern 适合用来做什么?
- 制作可分享链接,逐步带领评审者理解一次代码变更 基于 Mermaid 或 JSON 生成请求流程或架构的动画图示 在服务端直接输出 SVG 讲解帧,无需无头浏览器 为 AI Agent 提供动画讲解的结构化文本和状态轨迹
- lantern 怎么安装和运行?
- 克隆仓库: git clone https://github.com/ivarvong/lantern && cd lantern 安装依赖: npm install 启动开发服务器并打开示例场景: npm run dev
- 在哪里获取 lantern?
- 源代码和安装说明在 GitHub 上:https://github.com/ivarvong/lantern
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
893+153 本周62JavaScriptMIT维护活跃更新于 5天前
一个小型同步渲染器,把 Mermaid 图表文本渲染为 SVG,无运行时依赖。
4338+405 本周127TypeScriptOther维护活跃更新于 7天前
一个 TypeScript 库,可将 Mermaid 图表渲染为可主题化的 SVG 或 ASCII/Unicode 文本,无需 DOM 依赖。
1.1万+14 本周417TypeScriptMIT更新于 6个月前
一个智能体技能,让编码助手把代码改动以可交互图表的形式讲解,图中各部分链接到源码。
238+61 本周9TypeScriptMIT维护活跃更新于 昨天
一个零依赖的 JavaScript 库,用于绘制简洁、响应式、GitHub 风格的 SVG 图表。
1.5万+3 本周755JavaScriptMIT更新于 19天前