headless ui
Выше я говорил о том что множество UX паттернов не привязано к картинке, а описывают взаимодействия, которые могут быть нарисованы по разному, но должны включать в себя определенную логику хранения и обработки состояния.
Эту логику можно отделить от представления для более гибкого переиспользования. Но компонентный подход, в котором код фичи очень связан, способствовал забытию этой идеи. Для получения какой-то готовой логики из нпм приходится выбирать и дизайн, что не всегда подходит. В итоге, многие пишут эту логику сами, покрывая лишь success path.
К счастью, сейчас набирают популярность библиотеки логики компонентов, без отображения. В предыдущем посте я упоминал Reakit. Какое-то время это была прорывная библиотека и я за нее топил, но поддержка у нее достаточно слабая. Ее новая версия немного сменила брендинг и выглядит сейчас очень интересно: https://ariakit.org (несмотря на версию, можете ее уже считать стабильной).
Топовой альтернативой сейчас кажется Radix. Сам не пробовал, но выглядит хорошо и отзывы я слышал положительные.
Есть ещё большой и очень проработанный react-spectrum от Adobe, я точно могу рекомендовать к прочтению их доку по архитектуре и блог. Но апишка достаточно специфическая и работать с ней тяжело, особенно если вам нужно реализовать не большую обособленную дизайн систему, а просто накидать компоненты для бизнес приложения.
Reach UI маленький и старый, к тому же там все же есть завязка на view слой.
Есть ещё headlessui.dev от тайлвиндеров, я не пробовал, да и не очень много там компонентов.
Жаль что из всех перечисленных библиотек чистое отделение логики есть только у Реакита, и то с помощью хуков. Остальные все же завязываются на компоненты.
UPD: Ребята из Material-UI, наконец, тоже начали делать компоненты и хуки без стилей. Пока в альфе. Я очень жду, mui отличный кит.
Я хочу сделать подобный кит для веба на реатоме, который маленький и не привнесет оверхеда при использовании любого UI фреймворка. Но сейчас я могу заниматься этим только в свободное время. Если вам это тоже нужно и интересно вы можете задонатить мне на патреон или нанять меня на консалтинг 🤗
Выше я говорил о том что множество UX паттернов не привязано к картинке, а описывают взаимодействия, которые могут быть нарисованы по разному, но должны включать в себя определенную логику хранения и обработки состояния.
Эту логику можно отделить от представления для более гибкого переиспользования. Но компонентный подход, в котором код фичи очень связан, способствовал забытию этой идеи. Для получения какой-то готовой логики из нпм приходится выбирать и дизайн, что не всегда подходит. В итоге, многие пишут эту логику сами, покрывая лишь success path.
К счастью, сейчас набирают популярность библиотеки логики компонентов, без отображения. В предыдущем посте я упоминал Reakit. Какое-то время это была прорывная библиотека и я за нее топил, но поддержка у нее достаточно слабая. Ее новая версия немного сменила брендинг и выглядит сейчас очень интересно: https://ariakit.org (несмотря на версию, можете ее уже считать стабильной).
Топовой альтернативой сейчас кажется Radix. Сам не пробовал, но выглядит хорошо и отзывы я слышал положительные.
Есть ещё большой и очень проработанный react-spectrum от Adobe, я точно могу рекомендовать к прочтению их доку по архитектуре и блог. Но апишка достаточно специфическая и работать с ней тяжело, особенно если вам нужно реализовать не большую обособленную дизайн систему, а просто накидать компоненты для бизнес приложения.
Reach UI маленький и старый, к тому же там все же есть завязка на view слой.
Есть ещё headlessui.dev от тайлвиндеров, я не пробовал, да и не очень много там компонентов.
Жаль что из всех перечисленных библиотек чистое отделение логики есть только у Реакита, и то с помощью хуков. Остальные все же завязываются на компоненты.
UPD: Ребята из Material-UI, наконец, тоже начали делать компоненты и хуки без стилей. Пока в альфе. Я очень жду, mui отличный кит.
Я хочу сделать подобный кит для веба на реатоме, который маленький и не привнесет оверхеда при использовании любого UI фреймворка. Но сейчас я могу заниматься этим только в свободное время. Если вам это тоже нужно и интересно вы можете задонатить мне на патреон или нанять меня на консалтинг 🤗