better-ui

Applies design engineering principles to polish UI surfaces, animations, and icons.

Updated Jul 26, 2026
One-click install
npx skills add https://github.com/Dhruv-Ghanchi/Portfolio-Webiste --skill better-ui-dhruv-ghanchi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: better-ui
Source: https://github.com/Dhruv-Ghanchi/Portfolio-Webiste/tree/main/.agents/skills/better-ui
Command: npx skills add https://github.com/Dhruv-Ghanchi/Portfolio-Webiste --skill better-ui-dhruv-ghanchi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Interfaces often feel off due to small compounding details like mismatched border radii, jarring animations, or inconsistent icon weights. This Skill provides concrete principles and code patterns for reviewing and fixing UI polish issues in frontend code. ## Core Features & Use Cases - Surface Refinement: Enforces concentric border radius, optical alignment, shadow-based elevation, and pure black/white image outlines. - Animation Guidance: Prescribes interruptible CSS transitions, staggered enter animations, subtle exits, exact icon cross-fade values, and motion restraint for high-frequency interactions. - Icon Consistency: Matches icon stroke weight to text weight, uses one currentColor SVG recolored per state, and handles RTL flipping rules. - Use Case: When a button press feels dead or a card looks visually off, apply the scale-on-press pattern (scale(0.96)) and concentric radius formula to fix the interaction and spacing. ## Quick Start Review my Button and Card components for UI polish issues and suggest fixes for animations, shadows, and border radius.

Frequently Asked Questions about better-ui

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make nested border radius look right in CSS?

Use the concentric radius formula: outer radius equals inner radius plus padding. For example, a card with 8px padding and a 12px inner radius needs a 20px outer radius. Equal radii on nested surfaces make the inner element look pinched.

How to animate icon state changes in React?

Animate icons with opacity, scale (0.25 to 1), and blur (4px to 0px) instead of toggling visibility. With Motion or framer-motion use a spring transition with duration 0.3 and bounce 0; without a motion library, keep both icons in the DOM and cross-fade with CSS transitions.

Should I use CSS transitions or keyframe animations for UI?

Use CSS transitions for interactive state changes like hover, toggle, and open/close because they are interruptible mid-animation. Reserve keyframe animations for one-shot staged sequences such as enter animations or loading states.

Does this work with Tailwind CSS projects?

Yes, the principles include Tailwind-specific patterns such as active:scale-[0.96] for press feedback, transition-transform for transform-only transitions, and outline-black/10 dark:outline-white/10 for image outlines. It also warns against transition-all in favor of explicit properties.

When should I use will-change in CSS animations?

Use will-change only for GPU-compositable properties like transform, opacity, and filter, and only when you notice first-frame stutter. Never use will-change: all or apply it preemptively, since each compositing layer costs memory.

What icon stroke width should I use next to text?

Match the icon stroke to the adjacent text weight: 1.5px beside regular 400-weight text, 2px beside semibold 600, and 2.5px beside bold. Keep one stroke weight per icon set and never mix icon libraries on a single surface.