front-design
A design skill for building responsive, premium UI components in React 19 with a focus on mobile-first architecture and custom design patterns.
Install
mkdir -p .claude/skills/front-design && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/13948" && unzip -o skill.zip -d .claude/skills/front-design && rm skill.zipInstalls to .claude/skills/front-design
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Создание высококачественных интерфейсов в стиле "Mobile First" для проекта Knock-Knock. Используйте этот навык при разработке компонентов, страниц или рефакторинге UI. Скилл гарантирует соблюдение архитектуры (React 19, кастомных Radix UI), использование CSS-переменных из index.css, правильную работу с темами (Dark/Light) и Mobile-First верстку. Генерирует уникальный, премиальный дизайн, избегая стандартных "AI-шаблонов", сохраняя при этом чистоту кода проекта.Key capabilities
- →Create high-quality interfaces in 'Mobile First' style
- →Develop UI components and pages for Knock-Knock messenger
- →Refactor existing UI elements
- →Enforce architectural patterns like React 19 and custom Radix UI
- →Utilize CSS variables from `index.css` for styling
- →Ensure proper Dark/Light theme handling
How it works
The skill generates UI components for the Knock-Knock messenger, enforcing a mobile-first approach, custom Radix UI primitives, and specific theme handling using CSS variables.
Inputs & outputs
When to use front-design
- →Building messenger UI
- →Refactoring UI components
- →Implementing mobile-first layouts
- →Creating theme-aware components
About this skill
Front Design (Nemo Edition)
Этот навык предназначен для создания эстетичных, производительных и архитектурно правильных интерфейсов для мессенджера Nemo. Дизайн опирается на собственные уникальные концепты без использования чужих ассетов.
Перед работой прочитай корневой AGENTS.md, docs/DESIGN.md и актуальные CSS
tokens в коде. docs/DESIGN_SYSTEM_PLAN.md частично исторический: не копируй из
него значения без проверки. Privacy, accessibility и работа функции важнее
визуального эффекта.
🌟 Основные UX/UI Паттерны
- Никакого копирайта: Запрещено использовать иконки, SVG и графику из Telegram, WhatsApp и других продуктов. Все иконки должны быть кастомными или из открытых библиотек (Lucide, Radix Icons).
- Статусы сообщений: Вместо текстовых лейблов ("Delivered", "Read") используем элегантные галочки:
✓(отправлено/доставлено) и✓✓(прочитано). - Эталонные макеты:
- Desktop: Строгий 3-колоночный лейаут с опорой на тему Emerald Luxury.
- Mobile: Опираемся на плавающую нижнюю навигацию (Bottom Nav Bar) и дизайн карточек из темы Cosmic Neon.
- Динамичный Input: Кнопка отправки сообщения динамична: если инпут пуст — отображается кнопка аудиосообщения (Микрофон), при вводе текста она моментально меняется на кнопку Отправки (Send).
- Mobile First: Любой интерфейс сначала проектируется для мобильного экрана. Desktop-версия является адаптивным расширением.
- Radix UI Base: Используйте кастомные примитивы Radix (
<Flex>,<Box>,<Text>).
🎨 Дивижок Оформления (Telegram-like Customization)
Дизайн-система должна быть гибко настраиваемой пользователем через будущую вкладку "Оформление". Для этого:
- Масштабирование через tokens и
rem:- Корневой шрифт задается глобально:
html { --base-font-size: 16px; font-size: var(--base-font-size); } - Отступы, шрифты и скругления используют действующие design tokens; новые размеры не хардкодятся в обход системы.
- Корневой шрифт задается глобально:
- Zustand Theme Store: Глобальные настройки (шрифт, радиус углов, фон чата) управляются стейтом и инжектятся напрямую в
document.documentElement.style. - Динамический
color-mixиOKLCH:- Забудьте про HSL/HEX. Используйте цветовое пространство
OKLCHдля идеального контраста. - Избегайте жестко заданных переменных с прозрачностью (например,
--bg-alpha-50). Вместо этого вычисляйте состояния "на лету" с помощьюcolor-mix:background: color-mix(in oklch, var(--primary) 20%, transparent);.
- Забудьте про HSL/HEX. Используйте цветовое пространство
💎 Утвержденные Темы
Интерфейс должен поддерживать минимум 3 темы. Кастомные настройки из вкладки "Оформление" ложатся поверх них.
-
Default (По умолчанию)
data-theme="default"- Стиль: Чисто, знакомо, утилитарно.
- Light:
#f0f2f5фон,#ffffffпанели,#00a884акцент,#d9fdd3исходящие - Dark:
#111b21фон,#202c33панели,#00a884акцент,#005c4bисходящие
-
Emerald Luxury (Эталон для Десктопа)
data-theme="emerald"- Стиль: VIP, Природа, Золото, Платина.
- Палитра: Глубокие Лесные/Угольные фоны, Изумрудные/Золотые акценты.
- Стекло: Чёткие, тонкие границы (Золото/Серебро), слабое размытие.
-
Cosmic Neon (Эталон для Мобильной Навигации)
data-theme="neon"- Стиль: Киберпанк, Голография (смягченные, не кислотные тона).
- Палитра: Фиолетовые/Индиго фоны, Неоновые Голубые/Розовые акценты.
- Стекло: Сильное размытие (20px), матовый эффект, плавающие элементы (floating panels).
📐 Правила CSS Архитектуры
- CSS Layers (@layer) (ОТМЕНЕНО):
- Внимание: Использование
@layerстрого ЗАПРЕЩЕНО. - Из-за проблем специфичности (не-слоистый CSS всегда перебивает слоистый), мы отказались от
@layer. Используйте плоскую структуру вindex.cssи стандартную изоляцию через CSS Modules.
- Внимание: Использование
- Native CSS Nesting:
- Используйте нативный нестинг (
& .child { ... }) внутри ваших CSS Modules для чистоты кода.
- Используйте нативный нестинг (
- CSS Modules:
- Никаких инлайн-стилей (
style={{ color: 'red' }}). - Стилизация выполняется через пропсы компонентов-примитивов (
<Flex gap="3">) или через CSS Modules (className={styles.container}).
- Никаких инлайн-стилей (
❌ Чего следует ИЗБЕГАТЬ
- Декор вместо ясности: Градиенты, стекло и тени используются только когда не ухудшают контраст, производительность и читаемость.
- Хардкод: Запрещено писать в модулях
16px, пишитеvar(--space-md)или рассчитывайте вrem. Запрещено писать HEX-цвета — толькоvar(--color-...). - div-soup: Использование
divтам, где подходитFlexилиBox. - Чужие иконки: Никаких иконок ТГ.
Референсы
- Radix UI vs CSS Modules
- См. артефакт
design_mockups.md(AI Figma) для визуальной синхронизации.
When not to use it
- →When the project is not Knock-Knock messenger
- →When the user does not need 'Mobile First' design
- →When the user does not need custom Radix UI or specific theme handling
Limitations
- →Specific to the Knock-Knock project
- →Requires 'Mobile First' design approach
- →Strictly prohibits `@layer` in CSS
How it compares
This skill ensures a unique, premium design for Knock-Knock by prohibiting standard 'AI-templates' and enforcing specific architectural rules, unlike generic UI development.
Compared to similar skills
front-design side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| front-design (this skill) | 0 | 4mo | No flags | Advanced |
| elegant-design | 21 | 5mo | Review | Intermediate |
| visual-design-foundations | 5 | 5mo | No flags | Beginner |
| frontend-design-pro | 10 | 8mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
elegant-design
rand
Create world-class, accessible, responsive interfaces with sophisticated interactive elements including chat, terminals, code display, and streaming content. Use when building user interfaces that need professional polish and developer-focused features.
visual-design-foundations
wshobson
Apply typography, color theory, spacing systems, and iconography principles to create cohesive visual designs. Use when establishing design tokens, building style guides, or improving visual hierarchy and consistency.
frontend-design-pro
claudekit
Creates jaw-dropping, production-ready frontend interfaces AND delivers perfectly matched real photos (Unsplash/Pexels direct links) OR flawless custom image-generation prompts for hero images, backgrounds, and illustrations. Zero AI slop, zero fake URLs.
design-context
WellApp-ai
Refresh UI/UX context from design system, Storybook, and codebase
vibefigma
vibeflowing-inc
Convert Figma designs to production-ready React components with Tailwind CSS. Use when user provides a Figma URL, asks to convert Figma designs to React/code, wants to extract components from Figma, or mentions "vibefigma". Requires a Figma access token (via --token flag, FIGMA_TOKEN env var, or .env file).
design
dyeoman2
Design and restyle TanStack Start routes and React components in this repo using the March 2026 GPT-5.4 frontend guidance while preserving local conventions. Use when building or refining marketing pages, dashboards, admin surfaces, authenticated app views, page-level layouts, visual systems, or int