PickKit generates 3-4 genuinely different UI variants for every component request.
You pick. It applies. No back-and-forth.
Describe what you need — "button with icon", "card with image", "modal with form". PickKit parses the intent.
3-4 genuinely different approaches appear — not color swaps. Each with a clear trade-off description.
Pick the one that fits. The code lands in your project, styled and ready, in one pass.
With PickKit, every request surfaces real alternatives. A button isn't just "a button" — it's a design decision with consequences. We make you make it consciously.
import { cn } from '@lib/utils'
interface ButtonProps {
variant: 'minimal' | 'destructive' | 'brand'
children: React.ReactNode
className?: string
}
export function Button({ variant, children, className }: ButtonProps) {
const styles = {
minimal: 'border border-neutral-600 text-neutral-300 hover:border-neutral-400',
destructive: 'bg-red-600 text-white hover:bg-red-700 shadow-sm',
brand: 'bg-lime-400 text-black font-semibold hover:bg-lime-300',
}
return (
<button
className={cn(
'px-4 py-2 rounded-md text-sm transition-colors duration-150',
styles[variant],
className
)}
>
{children}
</button>
)
}
"The hardest part of UI development isn't writing code.
It's deciding which UI to write."
Every component starts with a choice. Buttons, cards, modals — all have three right answers, and nobody agrees on which one. PickKit doesn't eliminate that decision. It makes it explicit, fast, and reversible.
Built for developers who ship UI daily and are tired of iterating on the same button for the fourth time.