Add moments of joy, personality, and unexpected touches that make interfaces memorable and enjoyable to use. Elevates functional to delightful. Use when the user asks to add polish, personality, animations, micro-interactions, delight, or make an interface feel fun or memorable.
63
54%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./.cursor/skills/delight/SKILL.mdIdentify opportunities to add moments of joy, personality, and unexpected polish that transform functional interfaces into delightful experiences.
Invoke /frontend-design — it contains design principles, anti-patterns, and the Context Gathering Protocol. Follow the protocol before proceeding — if no design context exists yet, you MUST run /teach-impeccable first. Additionally gather: what's appropriate for the domain (playful vs professional vs quirky vs elegant).
Identify where delight would enhance (not distract from) the experience:
Find natural delight moments:
Understand the context:
Define delight strategy:
If any of these are unclear from the codebase, ask the user directly to clarify what you cannot infer.
CRITICAL: Delight should enhance usability, never obscure it. If users notice the delight more than accomplishing their goal, you've gone too far.
Follow these guidelines:
Add personality and joy through these methods:
Button delight:
/* Satisfying button press */
.button {
transition: transform 0.1s, box-shadow 0.1s;
}
.button:active {
transform: translateY(2px);
box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}
/* Ripple effect on click */
/* Smooth lift on hover */
.button:hover {
transform: translateY(-2px);
transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1); /* ease-out-quart */
}Loading delight:
Success animations:
Hover surprises:
Playful error messages:
"Error 404"
"This page is playing hide and seek. (And winning)"
"Connection failed"
"Looks like the internet took a coffee break. Want to retry?"Encouraging empty states:
"No projects"
"Your canvas awaits. Create something amazing."
"No messages"
"Inbox zero! You're crushing it today."Playful labels & tooltips:
"Delete"
"Send to void" (for playful brand)
"Help"
"Rescue me" (tooltip)IMPORTANT: Match copy personality to brand. Banks shouldn't be wacky, but they can be warm.
Custom illustrations:
Icon personality:
Background effects:
Drag and drop delight:
Toggle switches:
Progress & achievements:
Form interactions:
Subtle audio cues (when appropriate):
IMPORTANT:
Discovery rewards:
Seasonal touches:
Contextual personality:
Make waiting engaging:
Loading messages — write ones specific to your product, not generic AI filler:
- "Crunching your latest numbers..."
- "Syncing with your team's changes..."
- "Preparing your dashboard..."
- "Checking for updates since yesterday..."WARNING: Avoid cliched loading messages like "Herding pixels", "Teaching robots to dance", "Consulting the magic 8-ball", "Counting backwards from infinity". These are AI-slop copy — instantly recognizable as machine-generated. Write messages that are specific to what your product actually does.
Success celebrations:
Milestone recognition:
Animation libraries:
Sound libraries:
Physics libraries:
IMPORTANT: File size matters. Compress images, optimize animations, lazy load delight features.
NEVER:
Test that delight actually delights:
Remember: Delight is the difference between a tool and an experience. Add personality, surprise users positively, and create moments worth sharing. But always respect usability - delight should enhance, never obstruct.
db1add7
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.