button-states
FeaturedEvery interactive element needs a complete set of visual states — rest, hover, active/pressed, focus, disabled, and loading. States should be derived algorithmically from the base colour, not chosen arbitrarily. Use when designing buttons, links, inputs, or any clickable component.
Install
Quality Score: 88/100
Skill Content
Details
- Author
- dembrandt
- Repository
- dembrandt/dembrandt-skills
- Created
- 5 months ago
- Last Updated
- today
- Language
- JavaScript
- License
- MIT
Integrates with
Similar Skills
Semantically similar based on skill content — not just same category
tactile-interaction-curves
Physics-feeling micro-interactions for buttons, cards, list rows, toggles, menus, and modals — ease- out hover-in under 300ms, faster hover-out, a fast :active press with scale(0.97–0.98), and no `transition: all … linear`. Use this whenever writing or reviewing CSS/Tailwind/styled-components that includes :hover, :active, :focus, transition, transform, animation, or any interactive state, and whenever the user says "make it feel premium / tactile / responsive / snappy / alive", "hover effect", "click animation", "button feedback", "it feels flat / laggy / janky", or asks for a polished interactive component — even if they don't mention motion.
algorithmic-color-palette
Derive a full UI colour palette algorithmically from one or two brand colours. Darker and lighter variants for interactive states, desaturated greys from the brand hue for borders and backgrounds, and semantic colours that feel coherent with the brand rather than generic. Use when building a colour system from scratch or expanding a limited brand palette for UI use.
web-interaction
Use when designing hover/focus/active/disabled/loading/error states, forms, buttons, micro-interactions, or CSS transition budgets. Distilled from impeccable interaction, better-ui, micro-interactions, Vercel guidelines, taste-skill.