← Ко всем open source проектам

mo.js

mojs/mojs

mo.js — JavaScript-библиотека для веб-анимации, motion graphics, SVG-форм и таймлайнов.

Форки 886
Автор mojs
Язык CoffeeScript
Лицензия MIT
Обновлено 2026-06-27

Кратко

mo.js помогает делать выразительную веб-анимацию из готовых примитивов: shapes, bursts, swirls, stagger-эффекты и timeline-сценарии собираются декларативно.

Что это такое

mo.js — набор инструментов для motion graphics в вебе. Библиотека ориентирована на анимации, которые обогащают интерфейс визуально: всплески, формы, переходы, микровзаимодействия и последовательности.

Что внутри

Внутри есть компоненты для HTML-элементов, SVG-форм, swirl, burst и stagger-анимаций. Проект публикуется в npm и может использоваться через сборщик или CDN.

Как используют

mo.js обычно берут для посадочных страниц, интерактивных промо, визуальных акцентов в продукте и небольших эффектов, где обычного CSS-перехода уже мало.

Пример

Burst-анимация

Пример показывает простую вспышку из линий, которую можно привязать к клику или завершению действия.

Язык: JavaScript
const burst = new mojs.Burst({
  radius: { 0: 80 },
  count: 8,
  children: { shape: "line", stroke: "#111" }
});

burst.play();

Сильные стороны

Сильная сторона библиотеки — выразительный декларативный API. Анимацию можно описать как объект с параметрами и временем, а затем объединять части в более сложную сцену.

Ограничения

Ограничение — уместность. Яркая motion-графика легко превращается в шум, если ее добавить в каждое действие. mo.js лучше применять там, где движение помогает смыслу, а не спорит с ним.

Контекст проекта

mo.js ведется в репозитории mojs/mojs; публичная история проекта начинается 2014-06-26. Основной язык в метаданных — CoffeeScript, лицензия — MIT. У проекта есть отдельный сайт: https://mojs.github.io.

Этот контекст помогает читать страницу как разбор конкретного репозитория: у проекта есть владелец, техническая база, лицензия, история изменений и реальные ограничения выбранной экосистемы.

mo.js стоит оценивать через конкретный сценарий: кто будет поддерживать инструмент, где он встраивается в существующий стек, какие обновления придется отслеживать и что произойдет при ошибке. Такой взгляд лучше простой установки ради популярности, потому что открытый проект приносит пользу только тогда, когда его место в системе понятно команде.

Перед внедрением полезно отдельно проверить документацию, частоту релизов, модель лицензирования, требования к окружению и то, насколько легко проект будет удалить или заменить, если выбранный путь перестанет подходить продукту.