✦ Новый кейс — Lumo

Self-hosted аналог Miro: бесконечная доска, на которой команда одновременно рисует, пишет стикеры и строит схемы. Свой графический движок на PixiJS, совместное редактирование на Yjs с работой офлайн, шаблоны, mind map и канбан, комментарии, голосование и презентации, экспорт в PNG/SVG/PDF, публичный API с токенами и вебхуками. Только открытые зависимости, без Docker — один pnpm build и PM2.

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

Что сделали:
✦ бесконечный холст на собственном движке (PixiJS v8): отрисовка только видимого, упрощённый режим на мелком масштабе, плавная работа с 10 000 объектов
✦ стикеры, фигуры, текст с форматированием, перо и маркер, ластик, фреймы, картинки, карточки задач, таблицы, mind map, штампы и встраивания YouTube, Figma, Google Docs
✦ коннекторы — прямые, кривые и ортогональные, с обходом препятствий, подписями и привязкой к сторонам фигур
✦ выравнивание и распределение, магнитные направляющие с равными отступами, группировка, слои, блокировка
✦ совместное редактирование в реальном времени: курсоры, выделения, «следовать за участником», вызов всех к себе, лазерная указка

Под капотом: TypeScript, React, Vite, Tailwind CSS, TanStack Query, Node.js, SQLite.

14 дней до запуска · 32 000+ строк кода · 10 000 объектов при 60 FPS

Сайт → lumo.lkxa.ru
Кейс целиком → lkxa.ru/projects/lumo

Нужно что-то похожее? Пишите @lkxa_dev
