Перейти в канал

Tg: habr.com

1
Библиотека визуализации графов: как в Яндексе решили дилемму Canvas vs. HTML в Gravity UI Как отрендерить граф на 10 000+ элементов с интерактивными компонентами, не пожертвовав ни производительностью, ни удобством интерфейса? С этой задачей столкнулась команда User Experience инфраструктурных сервисов Яндекса при развитии своей опенсорсной дизайн-системы Gravity UI. Существующие решения не подходили: HTML/SVG-библиотеки начинали тормозить уже на сотнях элементов, а Canvas-решения требовали огромного количества кода для создания сложных UI-элементов. Вместо того чтобы выбирать между Canvas и HTML, команда решила использовать лучшее из обеих технологий. Так появилась gravity-ui/graph, новая библиотека, которую теперь зарелизили в опенсорс. Её ключевая идея проста и гениальна — она автоматически переключается между режимами в зависимости от того, насколько близко пользователь смотрит на граф, обеспечивая и скорость, и богатый интерфейс.