← Back to Project List
'diffusionstudio/lottie' is an open source Text-to-Lottie framework of Diffusion Studio: it is not a traditional Lottie playback library, but a "text-to-lottie" skill for coding agents such as Claude Code and Codex. with a local Skia Skottie preview player, it generates, edits and verifies Lottie JSON animation that can be produced and used in natural language. It is suitable for scenes such as brand dynamic effect, UI micro-interaction, Logo/SVG animation, loader, product promotion, technical illustration, data chart dynamic effect, etc. Before sales, it can be called "AI dynamic engineering workbench", but it should be noted that the output quality is highly dependent on input materials, prompt quality, Skottie/Lottie compatibility and manual aesthetic review.

1. Project Overview

ProjectInformation
GitHubdiffusionstudio/lottie
Project PositioningGenerate production-ready Lottie animations with coding agents such as Claude Code / Codex
Core Form'text-to-lottie' skill Local Skia Skottie player
LicenseMIT
package name'text-to-lottie', in warehouse 'private: true'
Current warehouse version'1.0.0 'from 'package.json', check date: 2026-06-29
latest submission'2026-06-26',commit '39bb536...', check date: 2026-06-29
Technology StackSolidJS, Vite, TypeScript, Tailwind CSS, CanvasKit/Skia Skottie, fflate
Installation Method'npx skills add diffusionstudio/lottie'
GitHub real-time stars/forksThis time, the GitHub anonymous API triggers the rate limit, which is not reliably read; it is not used as the main indicator of maturity.

2. Key Schematic

Text-to-Lottie Overview

! [[17-Temporary Attachment/DiffusionStudio-Lottie/header.gif]]

The first figure of README emphasizes its core interaction: starting from natural language/material description, let the coding agent generate Lottie animation, and view and iterate in real time in the local player.

Official generation example

! [[17-TEMPORARY ATTACHMENT/DiffusionStudio-Lottie/demo-1.gif]]

! [[17-TEMPORARY ATTACHMENT/DiffusionStudio-Lottie/demo-2.gif]]

These two official GIFs are suitable for showing customers the intuitive effect of "text to dynamic effect": instead of static pictures, they generate Lottie JSON that can be used for Web, mobile and cross-terminal UI.

Local Player Interface Screenshot

! [[17-TEMPORARY ATTACHMENT/DiffusionStudio-Lottie/player-home.png]]

The native player provides project/scene management, play/pause, timeline, frame positioning, zoom, property control, and export portals. After Agent modifies 'lottie.json', the player can be refreshed in real time to facilitate the review of dynamic quality.

#3 What is it?

This project can be understood in two parts:

CompositionEffect
'skills/text-to-lottie 'A skill description for Codex, Claude Code, and other agents, including Lottie generation specifications, design principles, dynamic recipes, and verification processes
Local player projectA SolidJS/Vite application that uses CanvasKit/Skia Skottie to render Lottie, supporting project/scene discovery, real-time preview, slots control, export

Therefore, it is more like a "AI production workbench" than an npm animation runtime. After the user installs skill through 'npx skills add diffusionstudio/lottie', the agent can generate Lottie JSON based on prompt, SVG, screenshots, or real data; the generated result falls in the local project:

public/projects///lottie.json

The player automatically discovers these scenes and displays them in the UI, plays them, locates frames, modifies slots, and exports them.

4. What does it mostly do?

CapabilitiesDescriptionsPre-Sales Value
Text Generation LottieGenerate Bodymovin/Lottie JSON according to natural language descriptionLower the threshold of dynamic production and quickly do Demo/marketing/product dynamic
SVG / Logo AnimationStroke, Gradient, revealing, Deformation from SVG path, Logo, IconBrand Vision, Start Page, Logo Effect
UI micro-interactionsuccess, error, empty status, button feedback, loader, etc.make the product UI more refined and suitable for SaaS/mobile App
Technical illustration animationProcess, architecture, path tracing, calloutUsed for pre-sales plan, technical demonstration, training courseware
Data/Indicator Dynamic EffectKPI, Chart, Digital Growth, dashboard figuresFor Business Reporting, Operational Kanban, Product Launch
product promotionfeature launch, social promo, product walkthroughsuitable for market materials and product introduction videos
Multi-Scenario Project ManagementMultiple scenes under a project can be sorted, thumbnails, and exported.It is suitable for series of dynamic assets instead of a single JSON.
slots / controlsImportant colors, sizes, text, etc. can be exposed as controlsLet non-engineering characters fine-tune parameters
Official Skottie verificationForce verification in local Skia Skottie playerReduce the risk of "JSON can be generated but actual rendering is broken"

5. Core Workflow

flowchart A["用户 prompt / SVG / 截图 / 数据"] --> B["Codex 或 Claude Code"] B --> C["text-to-lottie skill 路由 recipe"] C --> D["生成或编辑 lottie.json"] D --> E["本地 Skia Skottie player 实时预览"] E --> F["检查帧、动效、图层、slots"] F -->|需要修改| B F -->|通过| G["导出 Lottie JSON / 项目 zip"] G --> H["Web / React Native / iOS / Android / Flutter 使用"]

The key point is that it does not encourage the agent to output only an isolated JSON, but requires verification in the official player. The skill document explicitly requires checking frame' 0 ', midpoint and' op-1' to confirm that there is no blank, no cropping, no material loss, no wrong layering, and no bad easing.

6. Technical architecture and implementation points

6.1 Player Structure

ModuleRole
'src/context/scenes.tsx'Load project/scene tree from '/__scenes' or 'scenes.json'
vite-plugins/scenes.tsScans 'public/projects', providing '/_scenes', '/__context', and scene creation/deletion/saving interfaces
'src/lib/import.ts'Supports importing archive dotLottie '.json' Lottie or'.lottie'
'src/lib/export.ts'Export project as zip, including 'animations/'and 'images/'
'src/lib/thumbnails.ts'Use CanvasKit/Skottie to render scene frame 0 as a thumbnail
'src/components/playback-controls.tsx 'Play, pause, timeline, frames, FPS
'src/components/sidebar-right.tsx 'slots property panel, color/value/text control, export button

6.2 Scene File Conventions

public/
  canvaskit.wasm
  projects/
    /
      /
        lottie.json
        controls.json
        

Scene route form:

http://localhost://?frame=

This is important for the agent: it can generate an animation and then fix it to a certain frame to check the screen, rather than relying solely on abstract JSON structures.

6.3 Skill's Professional Dynamic Knowledge Base

text-to-lottie skill is not a simple reminder, but a set of dynamic production specifications. It routes different requirements to different recipes:

User intentCorresponding reference
Logo animation'recipe-logo.md, 'motion-taste.md,' design-taste.md
SVG Animation'recipe-svg-animation.md', 'svg-compatibility.md'
UI micro-interaction'recipe-ui-microinteractions.md'
Loader/Icon'recipe-loaders-icons.md
Technical Diagram'recipe-diagram-technical.md
Data/Chart'recipe-data-stats.md
Product Promotion'recipe-product-promo.md'
Long text/multi-chapter'chapterization-transition-grammar.md
Visual Effects'recipe-visual-effects.md

This means that its advantage is not "the ability to write JSON", but the ability to encapsulate motion design, Lottie spec, Skottie compatibility, and verification processes into Agent executable skills.

How to use #7.

7.1 Installation skill

Quick Start provided by README:

npx skills add diffusionstudio/lottie

Then prompt the 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 local player project

If the player project is missing, the player contract of skill recommends:

npx degit diffusionstudio/lottie my-animation
cd my-animation
npm install
npm run dev

The default port of the local dev server is '3030', but the port actually printed by Vite prevails.

7.3 Web Use Generation Animation



7.4 React Native / iOS / Android / Flutter

An example of multi-terminal access is given in the README:

PlatformMode
React Native'lottie-react-native' or React Native Skia 'Skottie'
iOS Swift'LottieAnimationView'
Android Kotlin'LottieAnimationView'
Flutter'lottie' package

This is very valuable for pre-sales: the product is standard Lottie JSON, which can enter the dynamic pipeline of the customer's existing mobile, Web and cross-end App.

8. Applicable Scenario

8.1 product and brand dynamic effect

Suitable for Logo reveal, brand loading, startup page, function release dynamic effect, social media promotion short animation. Compared with traditional After Effects production, AI generation can produce multiple directions faster for pre-comparison and pre-sales demonstrations.

8.2 SaaS / App UI micro-interaction

It is suitable for light-weight dynamic effects such as success/failure feedback, empty state, loading, button click feedback, state switching, etc. The most easily perceived by customers is that "the product appears to be more advanced and more feedback".

8.3 Pre-sales Scheme Visualization

Technical architecture, data flow, Agent workflow, indicator growth and product journey can all be made into Lottie animation and embedded into web pages, PPT, mobile terminals or demo pages.

8.4 Design System Dynamic Asset Library

For customers with a design system, it can be used to batch generate/iterate a set of Lottie assets in a unified style, and expose parameters such as color, size, speed, etc. through slots.

8.5 Agent Skill Example and Internal Empowerment

The project itself is an excellent example of Agent Skill: it shows how to encapsulate domain knowledge, documentation conventions, validation processes, and quality standards into a skill. When talking about the Agent platform to customers, it can be used to explain that "skills are not prompt, but executable workflow and professional specifications".

9. Not quite the scene

ScenarioReason
Complex character animation/movie-level motion graphicsLottie/Skottie capability and JSON complexity are limited, and professional AE/animation process is still required
100% designer's aesthetic replacement is neededAgent can speed up drafts and iterations, but the dynamic effect of fine products still needs manual aesthetic control
Lots of raster/video effectsLottie is more suitable for vector, shape, lightweight layer animation
Scenarios that are highly dependent on Lottie's renderer featuresThe compatibility of different renderer varies significantly and must be verified on the target side
The original material is very weak or prompt is very abstractREADME explicitly suggests providing SVG, real data and screenshots; Pure abstract description effect is unstable
Strict brand specification scene but lack of brand equityColor, font, dynamic rhythm if there is no constraint, the output is easy to deviate from the brand

10. What can I say before sales

Business-oriented

Customer ConcernsRecommended Words
Dynamic Production Slow"It compresses the cycle from idea to Lottie prototype from design scheduling to Agent real-time generation and iteration."
The product does not look delicate enough"UI micro-interaction, loader and status feedback can be generated quickly to improve the texture of the product experience."
Pre-sales materials are too static"Technical architecture, data flow and index changes can be made into lightweight Lottie dynamic effects and directly embedded into Web/PPT/demo."
Multiterminal Multiplexing"Lottie JSON can be used for web, iOS, Android, Flutter, React Native, not one-off video material."
Cost Control"It is suitable for fast multi-version schemes, and the final high-quality version will be refined by designers."

Technology-oriented

Technical IssuesRecommended Notes
What is the product?"Standard Bodymovin/Lottie JSON, by scene there is 'public/projects///lottie.json '."
how to verify"the official requirements in the local Skia Skottie player verification, check the key frame and rendering compatibility."
how to export"player supports to zip items, include' animations/'and' images/'."
Can I edit the parameters"You can use Lottie slots 'controls.json' to expose attributes such as color, value, and text."
Tech Stack"SolidJS/Vite/CanvasKit/Skottie, suitable as a local action workbench."

11. PoC Recommendations

11.1 Recommended PoC Themes

PoCInputOutputAcceptance Index
Logo revealSVG Logo Brand ColorTransparent Background LottieBrand Consistency, Path Accuracy, File Size
App loading Dynamic EffectProduct Style Usage Sceneloader / skeleton / state feedbackStable Rendering on End, Natural Circulation
Data Chart Dynamic EffectIndicator Data Visual StyleKPI/Chart LottieAccurate Numbers and Clear Rhythm
Technical process animationArchitecture diagram/flowchartLine tracing, node lightingPre-sales understandability
UI micro-interactionscreenshot/component descriptionbutton/card/status animationconsistent with design system

11.2 PoC Implementation Steps

  1. Select 3-5 high-value dynamic scenes, and do not cover all brand materials at the beginning.
  2. Prepare SVG, brand color, font, reference screenshots and dynamic rhythm requirements.
  3. Install skill with 'npx skills add diffusionstudio/lottie.
  4. Start the local player, generate the scene and check the frame in the Skottie.
  5. Export Lottie JSON and verify the actual rendering on the target Web / App / Flutter / React Native.
  6. Record the modification rounds, generation time, manual correction points, file size and terminal performance.

Example of 11.3 Acceptance Index

IndicatorRecommendation
First Edition Generation TimeCompared with traditional design scheduling, the goal is to significantly shorten
AvailabilityProportion of generation that can be directly verified on the end
Manual correction timeHow much design/front end needs to be repaired
Rendering CompatibilitySkottie, lottie-web, Mobile renderer to be tested
File sizeControl within business acceptable range
Brand consistencyColor, rhythm, shape, white space in line with brand specifications

12. Risks and Considerations

RiskDescriptionRecommendation
Lottie compatibilitySVG, mask, gradient, and blend mode may differ in different rendererThe target renderer is used for final acceptance
unstable qualityplain text prompt may generate mediocre or inaccurate dynamic effectsprovide SVG, screenshots, brand specifications, reference dynamic effects
Generate complex JSONAI may write overly complex layer/keyframeControl scope, do JSON lint and file size checks
Font Problemskill Document Tips Native Lottie text Unreliable in Current playerFixed Text Priority to Vector, Dynamic Text Requires Additional Font Loading
Copyright/Brand RiskInput materials and results may involve third-party copyrightsUse own materials, retain review process
Not a complete design toolIt is an Agent workflow player, not a replacement for Figma/AE full processPositioned as a prototype and delivery accelerator
GitHub API metadata throttlingReal-time stars/forks cannot be reliably read this timeThe maturity is mainly based on README, source code, license, latest submission and actual operation verification

13. My Pre-Sales Judgment

The value of 'diffusionstudio/lottie' is that it extends the "AI coding Agent" from code writing to dynamic production: instead of letting the model spit out a piece of JSON directly, it gives it a clear project structure, Skottie player, scene convention, quality standard and dynamic recipe. This approach is closer to a deliverable workflow than a normal prompt.

For pre-sales, it is suitable for two directions:

  1. Customer-oriented business: quickly generate product dynamic effects, marketing dynamic effects, UI micro-interaction, technical scheme animation, and enhance demonstration materials and product experience.
  2. Customer-oriented technical teams: Show how Agent Skill encapsulates professional knowledge and verification processes, allowing Agents to do more complex and controllable professional tasks.

It does not fit the promise of a "complete replacement for the motion designer". The more secure positioning is: for fast production, fast iteration, low-cost verification of direction.

14. Common Customer Q & A

What does it have to do with lottie-web?lottie-web is the playback library; this project is the agent skill and local Skottie workbench for generating/editing/validating Lottie.
Can the generated animation be commercially available?Project code MIT; However, whether the specific animation material is commercially available depends on the copyright of the input material and the brand license of the customer.
Do I need Claude Code/Codex?README is for coding agents that support skills, such as Claude Code/Codex. In theory, other agents that support skill reading can also be used.
Can the output be used on the mobile side?README gives React Native, iOS, Android and Flutter examples, but compatibility tests must be done renderer the target side.
Can you generate animation from SVG?Yes, this is the key example in README; the effect will be significantly better than a completely abstract natural language description.
Can I make an editable parameter?You can expose color, value, text and other controls through slots and 'controls.json.
What is the Effects ratio betweenand After?It is more suitable for rapid generation and iteration of Lottie prototypes; Professional tools such as AE should still be used for complex video-level dynamic effects.