Навык для Claude и coding-агентов, который превращает короткую JSON-спецификацию в анимированные интерактивные диаграммы с экспортом в SVG, PNG, GIF или MP4.
ivarvong/lantern
Библиотека TypeScript без внешних зависимостей для создания пошаговых анимированных объяснений кода с выводом в SVG в браузере, Cloudflare Workers и Node.
- Звёзды
- 247
- Форки
- 6
- Открытые issues
- 2
- Последний коммит
- 11 дней назад
Что это?
Lantern — порт базовой модели manim, анимационного движка на Python, на JavaScript/TypeScript. Библиотека предназначена для наглядного объяснения изменений в коде. Сцены задаются классами с асинхронным методом construct(), в котором объявляются шаги и анимации. К каждому шагу можно перейти по URL вида ?scene=&step=. Кроме того, для каждой сцены можно получить текстовое представление и структурированную трассировку состояния, благодаря чему результат удобно читать агентам.
У библиотеки нет зависимостей во время выполнения, а результат рендерится в SVG. В браузере она обновляет SVG-элемент в DOM на каждом кадре анимации; в Cloudflare Workers или Node возвращает строки SVG. Текст встраивается в виде контуров глифов из поставляемых вместе с библиотекой шрифтов, поэтому для рендеринга не нужны шрифты, установленные на хосте. Диаграммы можно описывать как блок-схемы Mermaid или как JSON-документы с узлами, рёбрами, кодом и операциями. HTTP API в Worker предоставляет для них эндпоинты рендеринга.
Ключевые возможности
- 01Анимированные шаги с прямыми ссылками по имени сцены и шага
- 02Рендеринг в SVG в браузере (живой DOM) или в виде строк в Workers и Node
- 03Текст в виде встроенных контуров глифов, независимо от установленных шрифтов
- 04Разбор блок-схем Mermaid и поддержка JSON-документов для описания сцен
- 05Текст, трассировка состояния и индекс наряду с SVG и экспортом кадров
- 06HTTP API в Cloudflare Workers для рендеринга сцен, описанных в JSON
Сценарии использования
- Пошаговое объяснение изменений в коде для ревьюера по ссылке, которой можно поделиться
- Создание анимированных диаграмм потоков запросов или архитектуры на основе Mermaid или JSON
- Генерация кадров объяснения в SVG на сервере без headless-браузера
- Предоставление AI-агентам структурированного текста и трассировки состояния анимированного объяснения
Быстрый старт
- 1
Клонируйте репозиторий
git clone https://github.com/ivarvong/lantern && cd lantern - 2
Установите зависимости
npm install - 3
Запустите сервер разработки и откройте демонстрационную сцену
npm run dev
Что важно знать
- Пока не опубликован в npm; для использования необходимо клонировать репозиторий.
- Для прямого запуска инструментов и тестов на TypeScript требуется Node 24.
- Пока не входит в область задач: 3D, булевы операции над контурами, LaTeX и сопоставление морфов.
В подборках
Темы
Частые вопросы
- Что такое lantern?
- Библиотека TypeScript без внешних зависимостей для создания пошаговых анимированных объяснений кода с выводом в SVG в браузере, Cloudflare Workers и Node. Lantern — порт базовой модели manim, анимационного движка на Python, на JavaScript/TypeScript. Библиотека предназначена для наглядного объяснения изменений в коде. Сцены задаются классами с асинхронным методом construct(), в котором объявляются шаги и анимации. К каждому шагу можно перейти по URL вида ?scene=&step=. Кроме того, для каждой сцены можно получить текстовое представление и структурированную трассировку состояния, благодаря чему результат удобно читать агентам.
- lantern можно использовать бесплатно? Какая у него лицензия?
- lantern распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- lantern всё ещё поддерживается?
- Активно поддерживается. Последний коммит в lantern — 27 окт. 2026 г..
- Для чего можно использовать lantern?
- Пошаговое объяснение изменений в коде для ревьюера по ссылке, которой можно поделиться Создание анимированных диаграмм потоков запросов или архитектуры на основе Mermaid или JSON Генерация кадров объяснения в SVG на сервере без headless-браузера Предоставление AI-агентам структурированного текста и трассировки состояния анимированного объяснения
- Как установить lantern?
- Клонируйте репозиторий: git clone https://github.com/ivarvong/lantern && cd lantern Установите зависимости: npm install Запустите сервер разработки и откройте демонстрационную сцену: npm run dev
- Где скачать lantern?
- Исходный код и инструкции по установке — на GitHub: https://github.com/ivarvong/lantern
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Небольшой синхронный рендерер, преобразующий текст диаграмм Mermaid в SVG без runtime-зависимостей.
Библиотека на TypeScript для рендеринга диаграмм Mermaid в настраиваемый по темам SVG или текст в ASCII/Unicode без зависимости от DOM.
Навык для AI-агентов, который помогает объяснять изменения в коде с помощью интерактивных диаграмм, где каждый элемент связан с исходным кодом.
JavaScript-библиотека без зависимостей для создания простых адаптивных SVG-графиков в стиле GitHub.
Единый HTTP API для преобразования текстовых описаний диаграмм, например PlantUML, Mermaid, D2 и GraphViz, в SVG, PNG и другие изображения.