Перейти к руководству
frontend-ui-engineeringавтор Addy Osmani

Frontend UI Engineering Skill.

Скилл Claude Code и Codex для UI-дизайна: создает продакшен-качественные, доступные, адаптивные пользовательские интерфейсы.

  • Web и UI
  • UI-код
addyosmani/agent-skills · skills/frontend-ui-engineering/SKILL.mdSKILL.md
--- name: frontend-ui-engineering description: Builds production-quality, accessible, responsive user-facing UIs. Use when building or modifying interfaces and pages, creating components, implementing layouts, meeting WCAG accessibility requirements, managing state, or when the output needs to look and feel production-quality rather than AI-generated. --- ## When to Use ## Component Architecture ## State Management ## Design System Adherence ## Accessibility (WCAG 2.1 AA) ## Responsive Design
Преамбула и заголовки разделов, считанные из исходного файла 2026-09-14 · 10 679 символов полностью

01 Что делает

Что делает skill frontend-ui-engineering в Claude Code и Codex

Сводка, рабочий процесс и результаты — всё прочитано из SKILL.md этого skill.

Из SKILL.mdПрочитано 14.09.2026 · не запись выполнения

Словами самого skill

Создаёт пользовательские интерфейсы производственного качества, которые доступны, производительны и визуально выверены. Skill фокусируется на создании UI, который выглядит так, будто его создал инженер с чувством дизайна в топовой компании, а не так, будто он сгенерирован ИИ. Он обеспечивает реальное соблюдение design system, надлежащую доступность WCAG 2.1 AA, продуманные паттерны взаимодействия и избегает типичных «ИИ-эстетических» штампов.

Skill охватывает архитектуру компонентов с колокацией файлов, композицию вместо конфигурации, управление состоянием — от локального useState до глобальных хранилищ, отзывчивый mobile-first дизайн, протестированный на конкретных breakpoint'ах, клавиатурную навигацию, ARIA-метки, управление фокусом, содержательные пустые и ошибочные состояния, скелетную загрузку и оптимистичные обновления для восприятия скорости.

Что он выдаёт

  • Скелетные состояния загрузки с aria-busy и aria-label для загружающегося контента
  • Содержательные пустые и ошибочные состояния с role="status", описательным текстом, иконками и понятными следующими шагами
Смотрите пример запроса ↗

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

  1. 01
    Размещайте файлы компонента вместе

    Помещайте реализацию компонента, тесты, стори, кастомные хуки и типы вместе в одну папку, названную по имени компонента.

  2. 02
    Компонуйте компоненты, а не настраивайте их

    Создавайте компонуемые API компонентов с вложенными children, а не с перегруженными объектами конфигурации через props.

  3. 03
    Отделяйте получение данных от представления

    Создавайте контейнерные компоненты, которые обрабатывают загрузку данных, ошибки и пустые состояния, а затем передают чистые данные компонентам представления.

  4. 04
    Выбирайте управление состоянием по масштабу

    Используйте useState для UI-состояния конкретного компонента, поднятое состояние для 2–3 соседних компонентов, Context для темы/аутентификации/локали, состояние URL для фильтров и пагинации, библиотеки серверного состояния для удалённых данных и глобальные хранилища для сложного общего клиентского состояния.

  5. 05
    Следуйте токенам design system

    Используйте семантические цветовые токены, такие как text-primary и bg-surface, вместо необработанных hex-значений, поддерживайте единую шкалу отступов с шагом 0.25rem и соблюдайте иерархию типографики.

  6. 06
    Реализуйте доступность WCAG 2.1 AA

    Сделайте каждый интерактивный элемент доступным с клавиатуры, добавьте ARIA-метки к неозначенным элементам управления, управляйте фокусом при изменении контента, обеспечьте контраст 4.5:1 для обычного текста и предусмотрите содержательные пустые и ошибочные состояния.

02 Определите своё применение

Когда использовать навык frontend-ui-engineering

Используйте skill frontend-ui-engineering в Claude Code или Codex, когда задача — UI-дизайн такого рода. Назначение и ограничения ниже взяты из собственного файла skill.

Хорошо подходит

  • Создание новых компонентов UI или страниц
  • Изменение существующих пользовательских интерфейсов
  • Реализация адаптивных макетов
  • Добавление интерактивности или управления состоянием
  • Исправление визуальных проблем или проблем UX

Знайте границы

  • Создание прототипов с ожиданием, что они будут переписаны позже
  • Пропуск стилизации из-за того, что дизайн не финальный
  • Откладывание адаптивного дизайна на более позднюю стадию
  • Отношение к доступности как к необязательной опции

Что предоставить

  • Реалистичный контент-заполнительРеальный контент или реалистичные примеры, которые выявляют проблемы макета, скрытые lorem ipsum (длина, перенос строк, переполнение)

03 Внутри скилла

Правила, которые skill frontend-ui-engineering задаёт Claude Code и Codex

8 конкретных инструкций, значений по умолчанию и ограничений, которые SKILL.md задаёт для агента — та часть файла, которая влияет на результат.

  1. Избегайте эстетических паттернов, характерных для AI

    Не используйте фиолетовый/индиго повсюду, избыточные градиенты, rounded-2xl на всём подряд, типовые hero-секции, текст-заполнитель lorem ipsum, чрезмерные отступы повсюду, стоковые сетки карточек или дизайн с обилием теней.

  2. Не допускайте пробрасывания пропсов глубже 3 уровней

    Если вы передаёте пропсы через компоненты, которые их не используют, введите контекст или перестройте дерево компонентов.

  3. Используйте единую шкалу отступов

    Применяйте отступы из шкалы с шагом 0.25rem (или той, что используется в проекте). Не придумывайте значения вроде 13px или 2.3rem, которых нет в шкале.

  4. Не пропускайте уровни заголовков

    Сохраняйте семантическую иерархию заголовков от h1 (заголовок страницы, один на страницу) до h2 (раздел) и h3 (подраздел). Не применяйте стили заголовков к неявляющемуся заголовком контенту.

  5. Каждый интерактивный элемент должен быть доступен с клавиатуры

    Используйте нативные фокусируемые элементы, такие как button. Если необходимо использовать div с onClick, добавьте role="button", tabIndex={0} и обработчики onKeyDown/onKeyUp для клавиш Enter и Space.

  6. Проектируйте mobile first

    Сначала разрабатывайте под мобильные breakpoints, затем расширяйтесь до больших экранов. Тестируйте при 320px, 768px, 1024px и 1440px.

  7. Используйте skeleton-загрузку, а не спиннеры

    Показывайте skeleton-состояния с aria-busy и aria-label для загружаемого контента. Реализуйте оптимистичные обновления для восприятия скорости.

  8. Компоненты не должны превышать 200 строк

    Разбивайте компоненты, выросшие более 200 строк, на более мелкие сфокусированные единицы.

04 Применение

Установить frontend-ui-engineering в Claude Code или Codex

Одна команда npx skills add, затем первая задача в вашем агенте и чек-лист для результата.

Добавить frontend-ui-engineering в Claude Code, Codex или ваш агент

Запустите в своём проекте; установщик спросит, какому агенту его добавить.

Terminal
npx skills add https://github.com/addyosmani/agent-skills --skill frontend-ui-engineering

Общая форма CLI-команды skills для skills/frontend-ui-engineering/SKILL.md; в репозитории может быть указан собственный путь.

Дайте skill первую задачу по дизайну интерфейса

Написано в терминах самого skill; замените части в квадратных скобках своим материалом.

Starter prompt
Build a TaskList component for [project name] that displays a list of tasks with checkboxes to mark them complete and delete buttons. The component should handle loading, error, and empty states. It should be keyboard accessible, meet WCAG 2.1 AA standards, work responsively from 320px to 1440px, and follow the design system's spacing scale and color tokens. Include a container component that fetches tasks using React Query and a presentation component that receives clean data.

Источник: составлено по SKILL.md в терминах самого skill.

Проверьте первый результат

Что сам SKILL.md считает правильным результатом:

  • Компонент отображается без ошибок в консоли
  • Все интерактивные элементы доступны с клавиатуры при переходе по странице клавишей Tab
  • Программа чтения с экрана может передать содержимое и структуру страницы
  • Адаптивная разметка работает на breakpoints 320px, 768px, 1024px и 1440px
  • Обработаны все состояния: загрузка, ошибка и отсутствие данных
  • Нет предупреждений о доступности в инструментах разработчика или axe-core

В OpenDesign импортируйте frontend-ui-engineering по ссылке на его SKILL.md: Plugins → Add → Skill → Import from link, затем выберите его в верхней панели.

05 Открытый исходный код, проверяемость

Источник, лицензия и проверка

Откуда взяты факты на этой странице и когда они были последний раз проверены.

Repository
github.com/addyosmani/agent-skills Ветка main
Файл skill
skills/frontend-ui-engineering/SKILL.md Контрольная сумма содержимого записана при проверке; коммит be4e44a
License
MIT Из LICENSE.
Звёзды репозитория
94,139 Снимок GitHub от 2026-09-14 для всего репозитория addyosmani/agent-skills. Не является рейтингом или счётчиком использования для frontend-ui-engineering.
Проверено OpenDesign
2026-09-14 Исходный файл, путь, текст лицензии и количество звезд были проверены. Не входит в основной комплект OpenDesign (проверено 2026-08-28); живой запуск не был записан на этой странице.

Внутри SKILL.md

  1. ОбзорЦель — UI production-уровня, который выглядит осознанно спроектированным, а не сгенерированным AI
  2. Когда использоватьПри создании или изменении компонентов UI, страниц, макетов, интерактивности, состояния или при исправлении визуальных проблем
  3. Архитектура компонентовДержите файлы рядом, предпочитайте композицию конфигурации, делайте компоненты узконаправленными, отделяйте данные от представления
  4. Управление состояниемВыбирайте самый простой подход: локальное состояние, поднятое состояние, context, состояние в URL, серверное состояние или глобальное хранилище
  5. Соблюдение design systemИзбегайте эстетических паттернов AI, используйте единую шкалу отступов, соблюдайте иерархию типографики, используйте семантические цветовые токены
  6. Доступность (WCAG 2.1 AA)Требуются навигация с клавиатуры, ARIA-метки, управление фокусом, содержательные пустые и ошибочные состояния
  7. Адаптивный дизайнПодход mobile-first, тестирование на брейкпоинтах 320px, 768px, 1024px, 1440px
  8. Загрузка и переходыИспользуйте skeleton-загрузку, а не спиннеры, реализуйте оптимистичные обновления для ощущения скорости
  9. Частые рационализацииКонтраргументы против откладывания доступности, адаптивного дизайна, стилизации или принятия эстетики AI
  10. Красные флагиКомпоненты длиннее 200 строк, инлайн-стили, отсутствующие состояния, отсутствие тестирования с клавиатуры, индикаторы только на основе цвета, вид AI
  11. ВерификацияЧек-лист для рендеринга, доступа с клавиатуры, скринридера, адаптивности, состояний, design system, инструментов доступности
Собственное описание skill
«Создаёт доступные, отзывчивые пользовательские интерфейсы продакшен-качества. Используйте при создании или изменении интерфейсов и страниц, создании компонентов, реализации компоновки, соблюдении требований доступности WCAG, управлении состоянием или когда результат должен выглядеть и ощущаться продакшен-качества, а не сгенерированным ИИ.»

Описание из front-matter в SKILL.md. Полный файл содержит около 10,679 символов. Читать полный файл на GitHub.

06 Перед установкой

Вопросы о skill frontend-ui-engineering

Ответы взяты из SKILL.md в редакции от 2026-09-14, а не из записанного запуска.

Когда следует использовать Context, а когда глобальное хранилище, например Zustand?

Используйте Context для данных, которые часто читаются и редко меняются, — тема, аутентификация, локаль. Используйте глобальное хранилище, например Zustand или Redux, для сложного клиентского состояния, общего для всего приложения.

Если вы делитесь состоянием только между 2-3 соседними компонентами, поднимите состояние к их общему родителю. Избегайте prop drilling глубже 3 уровней, вводя context или перестраивая дерево компонентов.

Frontend UI Engineering

Запустите frontend-ui-engineering на реальной задаче UI-дизайна.

Скачайте OpenDesign, импортируйте frontend-ui-engineering по ссылке SKILL.md, вставьте промпт выше и прочитайте план перед результатом.

Терминал
npx skills add https://github.com/addyosmani/agent-skills --skill frontend-ui-engineering

OpenDesign для компьютера

Одна дизайн-система. Единый образ бренда во всех материалах

В полном Vibe Design Workspace одни и те же правила бренда работают для сайтов, слайдов, интерактивных прототипов, дашбордов, изображений и HTML-видео. Подключите локальные Codex, Claude Code, Cursor и другие кодинг-агенты и создавайте бесплатно.

  • Сайты, слайды, прототипы, дашборды, изображения и видео
  • Более 140 дизайн-систем и полная библиотека шаблонов и навыков
  • Локальный Codex и более 21 кодинг-агента · Бесплатно
Скачать бесплатно

Для macOS и Windows