Что такое SIMAI Framework
SIMAI Framework — набор готовых решений для интерфейса: токены, утилиты, компоненты, Smart-компоненты и макеты, которые работают вместе. Здесь — что он собой представляет и какую задачу решает.
Что такое SIMAI Framework
SIMAI Framework — фронтенд-фреймворк для согласованных адаптивных веб-интерфейсов. Он даёт проекту готовый язык интерфейса: дизайн-токены, CSS- утилиты, компоненты, Smart-компоненты и описание страниц в виде данных.
Framework поставляется уже собранным. Проект подключает один файл стилей и один скрипт, пишет разметку из классов и тегов Framework — а загрузчик (Loader) сам подтягивает стили и сценарии тех частей, которые встретил на странице. Собирать CSS на каждой установке не нужно.
Для кого он:
- для верстальщика и фронтенд-разработчика — чтобы собирать страницы из готовых классов и элементов, не придумывая каждый раз отступы, цвета и кнопки;
- для разработчика серверной части и CMS — чтобы интерфейс жил отдельно от сервера и обновлялся без правки шаблонов каждого сайта;
- для дизайнера — чтобы решения макета (шкалы размеров, цвета, темы) существовали в коде как те же самые величины;
- для ИИ-инструментов — чтобы у каждой части имелось машинное описание, по которому её можно применить без угадывания.
Framework не зависит от серверной платформы. Он одинаково работает на статической странице, в веб-приложении и внутри CMS: всё, что ему нужно, — HTML, CSS и JavaScript в браузере.
Какую задачу он решает
Framework даёт проекту готовый слой интерфейса, который устроен по одним правилам, поставляется из одного места и описан так, что его могут применять и люди, и ИИ-инструменты. Конкретно Framework даёт четыре вещи.
- Одну систему интерфейса. Токены, утилиты, компоненты, Smart-компоненты и макеты построены на одних и тех же токенах, называются по одним правилам и настраиваются одинаково. Кнопка, поле и список одного размера стоят в одну линию, потому что размер у них — одна ступень общей лестницы, а не подобранное число (см. Одна лестница размеров).
- Центральную поставку и обновление закреплённым выпуском. Реализация лежит в поставке Framework, а проект ссылается на конкретный выпуск (см. Выпуск). Переход на новый выпуск обновляет все места, где элемент использован, сразу. Изменения, которые требуют правки проекта, записаны в журнале изменений (см. Жизненный цикл изменений и совместимость и Как обновить проект).
- Разделение Framework и проекта. Проект описывает, что ему нужно (класс, тег, настройки, данные). Как это нарисовано и как себя ведёт, определяет Framework. Бизнес-правила, данные и права остаются в проекте (см. Framework и проект: граница).
- Машиночитаемые контракты для людей и ИИ. Каждый Smart-компонент описан манифестом, у изменений есть журнал, у поставки — запись о выпуске, у макета — JSON-схема. Человек читает руководство; ИИ-инструмент и проверки читают контракты и применяют Framework по правилам, а не по догадке (см. Работа с ИИ).
Пример
Карточку товара собирают из токенов, утилит и обычных компонентов. Если выбор варианта должен менять цену и доступность, добавляется Smart-компонент, а получение данных и проверка прав остаются в проекте.