Открыть сервис

Excalidraw

Excalidraw — это бесплатное веб-приложение с открытым исходным кодом для создания векторных диаграмм, схем, блок-схем и рукописных заметок. Отличается минималистичным интерфейсом, имитацией рисования от руки (стиль «карандаш на бумаге») и возможностью совместной работы в реальном времени. Разрабатывается сообществом и компанией Excalidraw Inc.

История

Проект был основан в 2020 году разработчиками Войтехом Рингелем и Липой Дуань. Изначально задумывался как простой инструмент для быстрого создания технических схем и набросков, не требующий регистрации или установки. Первая публичная версия была выпущена в январе 2020 года и быстро набрала популярность благодаря удобству и доступности.

В 2021 году был опубликован исходный код под лицензией MIT, что позволило сообществу создавать собственные модификации и интеграции. В 2022 году Excalidraw стал частью экосистемы Obsidian (программа для ведения заметок) в виде плагина, что расширило его аудиторию среди пользователей, ведущих личные базы знаний. К 2024 году проект насчитывает более 50 тысяч звёзд на GitHub и используется миллионами пользователей по всему миру.

Основные возможности

Рисование и редактирование

Инструмент предоставляет базовый набор графических примитивов: прямоугольники, эллипсы, стрелки, линии, текст, а также свободное рисование от руки. Все элементы автоматически сглаживаются и приобретают характерный «рукописный» вид за счёт применения алгоритмов аппроксимации кривых. Поддерживаются:

  • изменение толщины и цвета линий;
  • заливка фигур цветом;
  • добавление текста с выбором шрифта (включая рукописный);
  • группировка, выравнивание, дублирование и удаление объектов;
  • бесконечное полотно с масштабированием и панорамированием.

Совместная работа

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

Экспорт и импорт

Готовые диаграммы можно экспортировать в форматы:

  • PNG (растровое изображение);
  • SVG (векторный формат, сохраняющий редактируемость);
  • Excalidraw JSON (собственный формат для повторного открытия в приложении).

Также поддерживается копирование в буфер обмена в виде изображения или SVG-кода. Импорт возможен только из JSON-файлов, созданных в Excalidraw.

Архитектура и технические детали

Приложение написано на TypeScript с использованием React для пользовательского интерфейса и Canvas API для рендеринга. Векторная графика отрисовывается на HTML5 Canvas, что обеспечивает высокую производительность даже при работе с большим количеством объектов. Совместная работа реализована через библиотеку yjs (Yjs) — алгоритм CRDT (Conflict-free Replicated Data Type), позволяющий синхронизировать изменения без центрального сервера. Для хранения данных используется IndexedDB браузера (автосохранение) или локальное хранилище.

Исходный код распространяется под лицензией MIT, что позволяет свободно использовать, модифицировать и распространять программу, в том числе в коммерческих целях. Существуют сторонние сборки и интеграции, например, для Obsidian, Notion, VS Code, а также отдельные десктопные версии на основе Electron.

Применение

Excalidraw используется в различных сферах:

  • Образование: преподаватели создают наглядные схемы, иллюстрации к лекциям, доски для мозговых штурмов.
  • Разработка ПО: проектирование архитектуры, диаграммы классов, блок-схемы алгоритмов, wireframes интерфейсов.
  • Бизнес: построение организационных структур, диаграммы процессов, презентационные материалы.
  • Личное использование: ведение заметок, планирование, создание mind map.

Благодаря отсутствию необходимости в установке и регистрации, инструмент особенно популярен для быстрых набросков во время онлайн-встреч и совещаний.

Ограничения

  • Отсутствие поддержки сложных векторных форматов (например, AI, EPS, PDF) и импорта из других программ.
  • Нет возможности вставки изображений (фотографий, иконок) — только рисованные объекты.
  • Ограниченный набор шрифтов (два шрифта: рукописный и обычный).
  • Нет слоёв, масок, градиентов и других продвинутых функций, характерных для профессиональных векторных редакторов (Adobe Illustrator, Inkscape).
  • Работа возможна только при подключении к интернету (кроме десктопных версий, которые могут работать офлайн).

Интересные факты

  • Название «Excalidraw» образовано от слов «Excalibur» (меч короля Артура) и «draw» (рисовать), что символизирует «волшебный инструмент для рисования».
  • Приложение изначально создавалось как хобби-проект, но быстро переросло в полноценный продукт, используемый крупными компаниями (например, Stripe, Google, Microsoft).
  • В 2023 году Excalidraw был включён в список лучших инструментов для удалённой работы по версии издания TechCrunch.
  • Существует версия для терминала (ASCII-арт), созданная энтузиастами.

Критика

Основные претензии пользователей связаны с отсутствием возможности импорта внешних изображений и ограниченным набором инструментов. Некоторые отмечают, что рукописный стиль, хотя и является отличительной чертой, может быть неуместен в официальных документах. Также высказывались пожелания по добавлению шаблонов, библиотек фигур и возможности экспорта в PDF.

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

Источники

  • Официальный сайт Excalidraw
  • Репозиторий на GitHub (лицензия MIT, описание проекта)
  • Статья «Excalidraw: The Best Free Whiteboard Tool for Remote Teams» на TechCrunch (2023)
  • Документация Yjs (CRDT)
Загружаем BFOmetr…