Repolode
ivarvong

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. 1

    Клонируйте репозиторий

    git clone https://github.com/ivarvong/lantern && cd lantern
  2. 2

    Установите зависимости

    npm install
  3. 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 обновляется ежедневно.

Похожие проекты

Навык для Claude и coding-агентов, который превращает короткую JSON-спецификацию в анимированные интерактивные диаграммы с экспортом в SVG, PNG, GIF или MP4.

893+153 за неделю62JavaScriptMITАктивно поддерживаетсяОбновлён 5 дней назад

Навык для AI-агентов, который помогает объяснять изменения в коде с помощью интерактивных диаграмм, где каждый элемент связан с исходным кодом.

238+61 за неделю9TypeScriptMITАктивно поддерживаетсяОбновлён вчера