Reakit – новый инструментарий, предназначенный для создания доступных веб-приложений на React. Его создатель, бразильский разработчик Диего Хаз, решил выпустить свой проект под MIT-лицензией. На днях стабильная версия 1.0 стала доступна для широкого круга пользователей.
Инструментарий включает в себя компонуемые, доступные элементы пользовательского интерфейса с широкими возможностями стилизации. Эти элементы отвечают строгим стандартам WAI-ARIA 1.1. Также Reakit позволяет управлять заданием фокуса и взаимодействием с клавиатуры для компонентов, которые требуют этого.
«WAI-ARIA – это сложно», – отметил Диего. – «В основном потому, что спецификация непрозрачная, запутанная и неполная. Моя цель разработки Reakit – предложить доступные компоненты «из коробки», а также показать пример того, как пользователи могут создавать с нуля свои собственные доступные приложения».
В прошлом году Диего удалил все ненужные стили из своего основного пакета. Базовая библиотека теперь не имеет стилизации по умолчанию и не зависит от CSS-библиотек. Это упрощает для разработчиков создание UI с нуля. Разработчики с особыми требованиями к представлению могут теперь легко применить свои собственные стили, вместо того чтобы тратить время на перезапись встроенного набора стилей.
Если не хочется начинать разработку с нуля, можно установить готовый пакет с темой – к примеру, reakit-theme-default. По мере роста сообщества Reakit все больше тем будут доступны в виде пакетов.
GitHub-репозиторий Reakit получил более 2100 звездочек, 34 человека внесли свой вклад в проект. Разработчики, которые наткнулись на Reakit еще на ранних стадиях разработки, уже создают приложения и библиотеки с помощью данного инструментария.
Год назад Диего уволился из компании, чтобы посвятить все свободное время работе над Reakit. Его расстраивал тот факт, что компания не рассматривала доступность в качестве одного из главных приоритетов разработки.
«Я начал создавать Reakit в свободное время с целью облегчить работу своей команды, поскольку мы писали многочисленные компоненты с нуля», – рассказал Диего. – «Компания не только отвергла эту идею (казавшуюся вполне разумной), но еще и попросила меня удалить проект».
«Так я понял, что оказался не в той компании, и покинул ее. Поскольку у меня были свои сбережения, я решил сфокусироваться на этом проекте. Но достаточно скоро мне придется искать новую работу. Я хочу найти компанию, в которой я смогу использовать Reakit, чтобы одновременно улучшать библиотеку и создавать что-то с ее помощью».
Далеко не все компании считают доступность важным приоритетом для своих React-продуктов. Одна из причин такого подхода состоит в том, что очень сложно найти специалиста, который обладал бы достаточным опытом в плане доступности и хорошими навыками в области React.
Как показал аудит доступности, выполненный WPCampus для Gutenberg, создание доступных веб-приложений с помощью React является достаточно сложной задачей. Gutenberg был значительно улучшен в сфере доступности после данного аудита. Этот процесс показал, что использование экспертных знаний в области доступности еще на начальных этапах имеет решающее значение для написания доступных веб-приложений.
У React очень часто (и, возможно, несправедливо) отмечают проблемы с доступностью. Библиотека не слишком проста, однако у нее имеется своя документация по доступности, что подталкивает разработчиков писать семантически правильный HTML-код.
Несмотря на то, что «волшебной» библиотеки, позволяющей автоматически реализовать доступность для любых веб-приложений, не существует, инструментарий Reakit дает разработчикам определенные преимущества в этом направлении. Проект ведется на GitHub. Также он представлен на Open Collective, где вы можете профинансировать его разработку.
Источник: wptavern.com