diffusionstudio/lottie 是 Diffusion Studio 开源的 Text-to-Lottie 框架:它不是传统的 Lottie 播放库,而是一个面向 Claude Code、Codex 等 coding agent 的 text-to-lottie skill,加上本地 Skia Skottie 预览播放器,用自然语言生成、编辑和验证可生产使用的 Lottie JSON 动画。它适合用于品牌动效、UI 微交互、Logo/SVG 动画、加载器、产品宣传、技术图解、数据图表动效等场景。售前上可把它讲成“AI + 动效工程工作台”,但需要注意:输出质量高度依赖输入素材、prompt 质量、Skottie/Lottie 兼容性和人工审美复核。1. 项目概览
| 项目 | 信息 |
|---|---|
| GitHub | diffusionstudio/lottie |
| 项目定位 | 用 Claude Code / Codex 等 coding agent 生成生产可用的 Lottie 动画 |
| 核心形态 | text-to-lottie skill + 本地 Skia Skottie player |
| License | MIT |
| package name | text-to-lottie,仓库内 private: true |
| 当前仓库版本 | 1.0.0,来自 package.json,检查日期:2026-06-29 |
| 最新提交 | 2026-06-26,commit 39bb536...,检查日期:2026-06-29 |
| 技术栈 | SolidJS、Vite、TypeScript、Tailwind CSS、CanvasKit/Skia Skottie、fflate |
| 安装方式 | npx skills add diffusionstudio/lottie |
| GitHub 实时 stars/forks | 本次 GitHub 匿名 API 触发 rate limit,未可靠读取;不作为成熟度主指标 |
2. 关键示意图
Text-to-Lottie 总览

README 首图强调它的核心交互:从自然语言/素材描述出发,让 coding agent 生成 Lottie 动画,并在本地播放器里实时查看和迭代。
官方生成示例


这两张官方 GIF 适合给客户展示“文本到动效”的直观效果:它生成的不是静态图片,而是可用于 Web、移动端和跨端 UI 的 Lottie JSON。
本地播放器界面截图

本地播放器提供项目/场景管理、播放/暂停、时间轴、帧定位、缩放、属性控制和导出入口。Agent 修改 lottie.json 后,播放器可以实时刷新,方便审查动效质量。
3. 它到底是什么
这个项目可以拆成两部分理解:
| 组成 | 作用 |
|---|---|
skills/text-to-lottie | 给 Codex、Claude Code 等 Agent 读取的技能说明,包含 Lottie 生成规范、设计原则、动效 recipe、验证流程 |
| 本地 player 项目 | 一个 SolidJS/Vite 应用,使用 CanvasKit/Skia Skottie 渲染 Lottie,支持项目/场景发现、实时预览、slots 控制、导出 |
因此,它更像“AI 动效生产工作台”,而不是一个 npm 动画运行时。用户通过 npx skills add diffusionstudio/lottie 安装 skill 后,可以让 Agent 根据 prompt、SVG、截图或真实数据生成 Lottie JSON;生成结果落在本地项目的:
public/projects///lottie.json
播放器会自动发现这些 scene,并在 UI 中显示、播放、定位帧、修改 slots 和导出。
4. 它主要能做什么
| 能力 | 说明 | 售前价值 |
|---|---|---|
| 文本生成 Lottie | 根据自然语言描述生成 Bodymovin/Lottie JSON | 降低动效制作门槛,快速做 Demo/营销/产品动效 |
| SVG / Logo 动画 | 从 SVG path、Logo、图标出发做描边、渐变、revealing、形变 | 品牌视觉、启动页、Logo 动效 |
| UI 微交互 | 成功、错误、空状态、按钮反馈、加载器等 | 让产品 UI 更精致,适合 SaaS/移动 App |
| 技术图解动画 | 流程、架构、路径 tracing、callout | 用于售前方案、技术演示、培训课件 |
| 数据/指标动效 | KPI、图表、数字增长、dashboard figures | 用于商业汇报、运营看板、产品发布 |
| 产品宣传 | feature launch、social promo、product walkthrough | 适合市场素材和产品介绍视频 |
| 多场景项目管理 | 一个项目下多个 scene,可排序、缩略图、导出 | 适合做系列动效资产,而不是单个 JSON |
| slots / controls | 重要颜色、尺寸、文本等可暴露成控件 | 让非工程角色能微调参数 |
| 官方 Skottie 验证 | 强制在本地 Skia Skottie player 中验证 | 降低“JSON 能生成但实际渲染坏掉”的风险 |
5. 核心工作流
关键点在于:它不鼓励 Agent 只输出一段孤立 JSON,而是要求在官方 player 中验证。skill 文档明确要求检查 frame 0、中点、op - 1,确认不空白、不裁切、不丢素材、不错误分层、不出现糟糕 easing。
6. 技术架构和实现要点
6.1 Player 结构
| 模块 | 作用 |
|---|---|
src/context/scenes.tsx | 从 /__scenes 或 scenes.json 加载项目/场景树 |
vite-plugins/scenes.ts | 扫描 public/projects,提供 /__scenes、/__context、scene 创建/删除/保存接口 |
src/lib/import.ts | 支持导入 .json Lottie 或 .lottie dotLottie archive |
src/lib/export.ts | 将项目导出为 zip,包含 animations/ 和 images/ |
src/lib/thumbnails.ts | 使用 CanvasKit/Skottie 渲染 scene 第 0 帧作为缩略图 |
src/components/playback-controls.tsx | 播放、暂停、时间轴、帧数、FPS |
src/components/sidebar-right.tsx | slots 属性面板、颜色/数值/文本控制、导出按钮 |
6.2 Scene 文件约定
public/
canvaskit.wasm
projects/
/
/
lottie.json
controls.json
Scene 路由形式:
http://localhost://?frame=
这对 Agent 很重要:它可以生成动画后固定到某一帧检查画面,而不是只靠抽象 JSON 结构判断。
6.3 Skill 的专业动效知识库
text-to-lottie skill 不是简单提示词,而是一套动效生产规范。它把不同需求路由到不同 recipe:
| 用户意图 | 对应参考 |
|---|---|
| Logo 动画 | recipe-logo.md、motion-taste.md、design-taste.md |
| SVG 动画 | recipe-svg-animation.md、svg-compatibility.md |
| UI 微交互 | recipe-ui-microinteractions.md |
| 加载器/图标 | recipe-loaders-icons.md |
| 技术图解 | recipe-diagram-technical.md |
| 数据/图表 | recipe-data-stats.md |
| 产品宣传 | recipe-product-promo.md |
| 长文本/多章节 | chapterization-transition-grammar.md |
| 视觉特效 | recipe-visual-effects.md |
这意味着它的优势不是“能写 JSON”,而是把 motion design、Lottie spec、Skottie 兼容性、验证流程封装成 Agent 可执行的技能。
7. 怎么用
7.1 安装 skill
README 提供的 Quick Start:
npx skills add diffusionstudio/lottie
然后向 coding agent 提示:
Create a Lottie animation from the SVG path in ...
Reveal the path with an animation that follows the natural path direction.
Apply a premium apple themed gradient...
7.2 本地 player 项目
如果缺少 player 项目,skill 的 player contract 建议:
npx degit diffusionstudio/lottie my-animation
cd my-animation
npm install
npm run dev
本地 dev server 默认端口 3030,但以 Vite 实际打印的端口为准。
7.3 Web 使用生成动画
7.4 React Native / iOS / Android / Flutter
README 中给了多端接入示例:
| 平台 | 方式 |
|---|---|
| React Native | lottie-react-native 或 React Native Skia Skottie |
| iOS Swift | LottieAnimationView |
| Android Kotlin | LottieAnimationView |
| Flutter | lottie package |
这对售前很有价值:生成物是标准 Lottie JSON,可进入客户现有移动端、Web 端、跨端 App 的动效管线。
8. 适用场景
8.1 产品和品牌动效
适合 Logo reveal、品牌 loading、启动页、功能发布动效、社交媒体宣传短动画。相比传统 After Effects 制作,AI 生成可以更快产出多个方向,用于前期比稿和售前演示。
8.2 SaaS / App UI 微交互
适合成功/失败反馈、空状态、加载中、按钮点击反馈、状态切换等轻量动效。客户最容易感知的是“产品显得更高级、更有反馈感”。
8.3 售前方案可视化
技术架构、数据流、Agent 工作流、指标增长、产品旅程都可以做成 Lottie 动画,嵌入网页、PPT、移动端或 demo 页面。
8.4 设计系统动效资产库
对于有设计系统的客户,可以用它批量生成/迭代一组统一风格的 Lottie 资产,并通过 slots 暴露颜色、尺寸、速度等参数。
8.5 Agent Skill 示例和内部赋能
这个项目本身也是一个 Agent Skill 的优秀样例:它展示了如何把专业领域知识、文件约定、验证流程、质量标准封装成 skill。对客户讲 Agent 平台时,可用它说明“技能不是 prompt,而是可执行工作流和专业规范”。
9. 不太适合的场景
| 场景 | 原因 |
|---|---|
| 复杂角色动画 / 影视级 motion graphics | Lottie/Skottie 能力和 JSON 复杂度有限,仍需要专业 AE/动画流程 |
| 需要 100% 设计师审美替代 | Agent 可加速草稿和迭代,但精品动效仍需人工审美把关 |
| 大量 raster/video 特效 | Lottie 更适合矢量、形状、轻量图层动画 |
| 高度依赖 Lottie renderer 特性的场景 | 不同 renderer 兼容性差异明显,必须在目标端验证 |
| 原始素材很弱或 prompt 很抽象 | README 明确建议提供 SVG、真实数据、截图;纯抽象描述效果不稳定 |
| 严格品牌规范场景但缺少品牌资产 | 色彩、字体、动效节奏如果没有约束,输出容易偏离品牌 |
10. 售前可以怎么讲
面向业务方
| 客户关注点 | 推荐话术 |
|---|---|
| 动效制作慢 | “它把从想法到 Lottie 原型的周期从设计排期压缩到 Agent 即时生成和迭代。” |
| 产品看起来不够精致 | “UI 微交互、加载器、状态反馈可以快速生成,提升产品体验质感。” |
| 售前材料太静态 | “技术架构、数据流、指标变化可以做成轻量 Lottie 动效,直接嵌入 Web/PPT/demo。” |
| 多端复用 | “Lottie JSON 可以用于 Web、iOS、Android、Flutter、React Native,不是一次性视频素材。” |
| 成本控制 | “适合快速出多版方案,最终精品版本再交由设计师精修。” |
面向技术方
| 技术问题 | 推荐说明 |
|---|---|
| 生成物是什么 | “标准 Bodymovin/Lottie JSON,按 scene 存在 public/projects/。” |
| 怎么验证 | “官方要求在本地 Skia Skottie player 验证,检查关键帧和渲染兼容性。” |
| 怎么导出 | “player 支持把项目打成 zip,包含 animations/ 和 images/。” |
| 能否编辑参数 | “可以通过 Lottie slots + controls.json 暴露颜色、数值、文本等属性。” |
| 技术栈 | “SolidJS/Vite/CanvasKit/Skottie,适合作为本地动效工作台。” |
11. PoC 建议
11.1 推荐 PoC 主题
| PoC | 输入 | 输出 | 验收指标 |
|---|---|---|---|
| Logo reveal | SVG Logo + 品牌色 | 透明背景 Lottie | 品牌一致性、路径准确、文件大小 |
| App loading 动效 | 产品风格 + 使用场景 | loader / skeleton / state feedback | 端上渲染稳定、循环自然 |
| 数据图表动效 | 指标数据 + 视觉风格 | KPI/图表 Lottie | 数字准确、节奏清晰 |
| 技术流程动画 | 架构图/流程图 | 线路追踪、节点亮起 | 售前可理解性 |
| UI 微交互 | 截图/组件描述 | 按钮/卡片/状态动画 | 与设计系统一致 |
11.2 PoC 执行步骤
- 选 3-5 个高价值动效场景,不要一开始覆盖所有品牌素材。
- 准备 SVG、品牌色、字体、参考截图、动效节奏要求。
- 用
npx skills add diffusionstudio/lottie安装 skill。 - 启动本地 player,生成 scene 并在 Skottie 中检查帧。
- 导出 Lottie JSON,在目标端 Web / App / Flutter / React Native 做真实渲染验证。
- 记录修改轮次、生成时间、人工修正点、文件大小、端上性能。
11.3 验收指标示例
| 指标 | 建议 |
|---|---|
| 首版生成时间 | 与传统设计排期对比,目标是显著缩短 |
| 可用率 | 生成后能直接进入端上验证的比例 |
| 人工修正时间 | 设计/前端需要修多少 |
| 渲染兼容性 | Skottie、lottie-web、移动端 renderer 都要测试 |
| 文件大小 | 控制在业务可接受范围内 |
| 品牌一致性 | 色彩、节奏、形状、留白符合品牌规范 |
12. 风险和注意事项
| 风险 | 说明 | 建议 |
|---|---|---|
| Lottie 兼容性 | SVG、mask、gradient、blend mode 在不同 renderer 中可能差异 | 以目标端 renderer 做最终验收 |
| 质量不稳定 | 纯文本 prompt 可能生成平庸或不准确动效 | 提供 SVG、截图、品牌规范、参考动效 |
| 生成 JSON 复杂 | AI 可能写出过度复杂的 layer/keyframe | 控制 scope,做 JSON lint 和文件大小检查 |
| 字体问题 | skill 文档提示原生 Lottie text 在当前 player 中不可靠 | 固定文字优先转矢量,动态文字需额外实现字体加载 |
| 版权/品牌风险 | 输入素材和生成结果可能涉及第三方版权 | 使用自有素材,保留审查流程 |
| 不是完整设计工具 | 它是 Agent 工作流 + player,不替代 Figma/AE 全流程 | 定位为原型和交付加速器 |
| GitHub API 元数据限流 | 本次未可靠读取实时 stars/forks | 成熟度以 README、源码、license、最新提交和实际运行验证为主 |
13. 我的售前判断
diffusionstudio/lottie 的价值在于它把“AI 编码 Agent”从写代码扩展到了动效生产:不是让模型直接吐一段 JSON 就结束,而是给它一个明确的项目结构、Skottie 播放器、场景约定、质量标准和动效 recipe。这种做法比普通 prompt 更接近可交付工作流。
对售前来说,它适合用来讲两个方向:
- 面向客户业务:快速生成产品动效、营销动效、UI 微交互、技术方案动画,提升演示材料和产品体验。
- 面向客户技术团队:展示 Agent Skill 如何把专业知识和验证流程封装起来,让 Agent 做更复杂、更可控的专业任务。
它不适合承诺“完全替代动效设计师”。更稳妥的定位是:用于快速出稿、快速迭代、低成本验证方向;最终精品交付仍应由设计师和前端工程师做审美、品牌和端上兼容性把关。
14. 常见客户 Q&A
| 问题 | 回答建议 |
|---|---|
| 它和 lottie-web 是什么关系? | lottie-web 是播放库;这个项目是生成/编辑/验证 Lottie 的 Agent skill 和本地 Skottie 工作台。 |
| 生成的动画能商用吗? | 项目代码 MIT;但具体动画素材是否可商用取决于输入素材版权和客户品牌授权。 |
| 是否需要 Claude Code / Codex? | README 面向 Claude Code/Codex 等支持 skills 的 coding agent;理论上其他支持读取 skill 的 agent 也可适配。 |
| 输出能在移动端用吗? | README 给了 React Native、iOS、Android、Flutter 示例,但必须在目标端 renderer 做兼容性测试。 |
| 能不能从 SVG 生成动画? | 可以,这是 README 中重点示例;效果会明显好于完全抽象的自然语言描述。 |
| 能不能做可编辑参数? | 可以通过 slots 和 controls.json 暴露颜色、数值、文本等控制项。 |
| 和 After Effects 比如何? | 它更适合快速生成和迭代 Lottie 原型;复杂影视级动效仍应使用 AE 等专业工具。 |