ui-skills

Opinionated constraints for building better interfaces with agents.

16 stars

Best use case

ui-skills is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Opinionated constraints for building better interfaces with agents.

Teams using ui-skills should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/ui-skills/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/design/ui-skills/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/ui-skills/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How ui-skills Compares

Feature / Agentui-skillsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Opinionated constraints for building better interfaces with agents.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# UI Skills

Opinionated constraints for building better interfaces with agents.

## Stack

-   MUST use Tailwind CSS defaults (spacing, radius, shadows) before custom values
-   MUST use `motion-sv` (works like motion.dev for vue but its svelte) when JavaScript animation is required
-   SHOULD use `tw-animate-css` for entrance and micro-animations in Tailwind CSS
-   MUST use `cn` utility (`clsx` + `tailwind-merge`) for class logic

## Components

-   MUST use accessible component primitives for anything with keyboard or focus behavior (`bits-ui`)
-   MUST use the project’s existing component primitives first
-   NEVER mix primitive systems within the same interaction surface
-   SHOULD prefer [`bits-ui`](https://bits-ui.com/docs/introduction) for new primitives if compatible with the stack
-   MUST add an `aria-label` to icon-only buttons
-   NEVER rebuild keyboard or focus behavior by hand unless explicitly requested

## Interaction

-   MUST use an `AlertDialog` for destructive or irreversible actions
-   SHOULD use structural skeletons for loading states
-   NEVER use `h-screen`, use `h-svh`
-   MUST respect `safe-area-inset` for fixed elements
-   MUST show errors next to where the action happens
-   NEVER block paste in `input` or `textarea` elements

## Animation

-   NEVER add animation unless it is explicitly requested
-   MUST animate only compositor props (`transform`, `opacity`)
-   NEVER animate layout properties (`width`, `height`, `top`, `left`, `margin`, `padding`)
-   SHOULD avoid animating paint properties (`background`, `color`) except for small, local UI (text, icons)
-   SHOULD use `ease-out` on entrance
-   NEVER exceed `200ms` for interaction feedback
-   MUST pause looping animations when off-screen
-   MUST respect `prefers-reduced-motion`
-   NEVER introduce custom easing curves unless explicitly requested
-   SHOULD avoid animating large images or full-screen surfaces

## Typography

-   MUST use `text-balance` for headings and `text-pretty` for body/paragraphs
-   MUST use `tabular-nums` for data
-   SHOULD use `truncate` or `line-clamp` for dense UI
-   NEVER modify `letter-spacing` (`tracking-`) unless explicitly requested

## Layout

-   MUST use a fixed `z-index` scale (no arbitrary `z-x`)
-   SHOULD use `size-x` for square elements instead of `w-x` + `h-x`

## Performance

-   NEVER animate large `blur()` or `backdrop-filter` surfaces
-   NEVER apply `will-change` outside an active animation
-   NEVER use `useEffect` for anything that can be expressed as render logic

## Design

-   NEVER use gradients unless explicitly requested
-   NEVER use purple or multicolor gradients
-   NEVER use glow effects as primary affordances
-   SHOULD use Tailwind CSS default shadow scale unless explicitly requested
-   MUST give empty states one clear next action
-   SHOULD limit accent color usage to one per view
-   SHOULD use existing theme or Tailwind CSS color tokens before introducing new ones

Related Skills

super-skills

16
from diegosouzapw/awesome-omni-skill

Decomposes complex user requests into executable subtasks, identifies required capabilities, searches for existing skills, and creates new skills when needed.

skills-creator

16
from diegosouzapw/awesome-omni-skill

Creates new Claude Code skills in the .claude/skills/ directory. Specializes in designing well-structured, effective skills through thorough requirements gathering. Use when the user wants to create a new skill, command, agent, or automation.

shortcut-ui-skills

16
from diegosouzapw/awesome-omni-skill

Shortcut's UI design system. Use when building interfaces inspired by Shortcut's aesthetic - light mode, Inter font, 4px grid.

Building Agent Skills

16
from diegosouzapw/awesome-omni-skill

Assists in creating Agent Skills of varying complexity levels (simple, moderate, complex). Use when the user wants to create, design, or build a new Agent Skill, or when they need guidance on skill architecture, workflow design, schema validation, or template structure.

amplitude-ui-skills

16
from diegosouzapw/awesome-omni-skill

Amplitude's UI design system. Use when building interfaces inspired by Amplitude's aesthetic - light mode, Inter font, 4px grid.

writing-skills

16
from diegosouzapw/awesome-omni-skill

Use when creating new skills, editing existing skills, or verifying skills work before deployment - applies TDD to process documentation by testing with subagents before writing, iterating until bulletproof against rationalization

treido-skillsmith

16
from diegosouzapw/awesome-omni-skill

Skill-system maintainer for Treido. Use to create/merge/trim skills, enforce treido-* naming, and keep `.codex/skills` minimal and consistent.

skills-management

16
from diegosouzapw/awesome-omni-skill

Search, find, discover, install, remove, update, review, list, and move skills for AI coding agents. Use when user asks "find a skill for X", "search for a skill", "is there a skill for X", "install skill", "remove skill", "update skills", "list skills", "review skill quality", "move skill", "check for updates", or "how do I do X" where X might have an existing skill. This is THE tool for skill discovery and ecosystem search.

sarvam-ai-skills

16
from diegosouzapw/awesome-omni-skill

Guide for building AI applications with Sarvam AI APIs for Indian languages. Use when working with speech-to-text transcription, text-to-speech synthesis, text translation, chat completion, or document intelligence. Covers models saarika:v2.5, saaras:v2.5/v3, bulbul:v3, mayura:v1, sarvam-translate:v1, sarvam-m, and sarvam-vision for 11-23 Indian languages. Trigger when user asks about Indian language AI, STT, TTS, translation, multilingual chatbots, voice assistants, or document processing.

rules-vs-skills

16
from diegosouzapw/awesome-omni-skill

Explain when to use always-on Rules vs on-demand Skills. Use when the team is confused about where to encode guidance, deciding between rules and skills, or understanding the difference between invariants and procedures.

reinforce-skills

16
from diegosouzapw/awesome-omni-skill

This skill should be used when the user asks to 'reinforce skills', 'add skill map', 'update skill map', 'sync skills to CLAUDE.md', 'persist skills', 'save skills to project', 'embed skills', 'skills keep getting forgotten', 'I keep forgetting skills', or when setting up a new project where installed skills should be persisted as context. Generates a compressed skill-mapping directive in CLAUDE.md following the Vercel AGENTS.md research pattern.

mixseek-skills

16
from diegosouzapw/awesome-omni-skill

MixSeek Agent Skills collection for AI coding assistants. Provides workspace management, team configuration, evaluation setup, and debugging tools for MixSeek-Core.