Skip to content
← writing

A production button: gradient fill + inner-light rim

css
tailwind
cva
buttons

Ask your agent to implement this

Read the full writeup at https://seangeng.com/writing/a-production-button.md and implement it in my project.

It covers: A production button: gradient fill + inner-light rim. The button I actually ship: a class-variance-authority component whose depth comes from two pseudo-element layers (gradient fill, inner-light rim) and a color-matched shadow. Eight variants, four sizes, asChild.

Requirements:
- Follow the technique/approach exactly as described in the writeup.
- Adapt names, colors, and styling to my project's existing conventions.
- If it's a component, make it reusable with sensible props and TypeScript types.
- Keep it accessible: semantic HTML, keyboard support, and respect prefers-reduced-motion.
- When done, tell me which files you created or changed and how to use it.

Paste into Claude Code, Codex, Cursor, or any agent. view raw .md download source .zip