DivKit

DivKit — библиотека для создания карточек из элементов JSON-верстки для приложений и сайтов.

Как работает DivKit

Типовой стек

Минимальный стек

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

Принимает на вход JSON-верстку и строит UI, основанный на нативной платформе DivView.

DivJson

Интерактив

  • Низкоуровневый — оперирует атомарными блоками верстки.
  • Высокоуровневый — оперирует шаблонами.
  • Самодостаточный — содержит информацию о позиционировании, оформлении и интерактивности.
  • Позволяет описывать альтернативные иерархии элементов для смены UI на лету.
  • Концепция состояний позволяет легко реализовывать как простые, так и комплексные смены стиля интерфейса.
  • Система анимаций позволяет описывать анимации переходов между состояниями.

Шаблонизация

Кастомизация

Обеспечивает инкапсуляцию и переиспользование, поддерживает наследование, уменьшает объем и скорость парсинга.

Позволяет реализовать дополнительную логику — изменить поведение и отображение любого элемента.

Переменные

Дозагрузка

Подддерживает экшены для установки и модификации, базовые условия. Поддерживаемые переменные:

  • глобальные — например, цвета;
  • локальные — например, счетчик лайков.

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

Примеры карточек

Узнать больше

Следите за новостями DivKit в Telegram-канале: http://t.me/divkit_news

Также вы можете обсуждать интересующие вас темы в сообществе пользователей DivKit в Telegram: https://t.me/divkit_community_ru

Репозиторий DivKit