Public primitives
Marquee, dock, and shimmer stay free. No license header.
Premium UI Kit for Next.js
Patina is a freemium registry: 156 free components and starter blocks, 133 pro blocks, and 28 full app shells. Motion primitives and basic marketing blocks stay free.
@patina/marquee
free primitives
pro items
app shells
one-time
Add Patina components to any Next.js project in seconds. Free primitives stay public — no sign-in.
1. Add to your components.json
{
"registries": {
"@patina": "https://patina-ui.nstranquist.workers.dev/r/{name}.json"
}
}2. Install any component
npx shadcn@latest add @patina/marqueeFull product surfaces. Drop complete screens into your app. Three shells are free.
Complete landing: nav, hero, logo cloud, bento, features, pricing, FAQ, footer.
Login and signup screens as a complete product surface.
Multi-step user onboarding with progress and validation.
App chrome with sidebar, topbar, KPI cards, data table, and chart panels.
Account, billing, and team settings with tabbed navigation.
Chat interface with thread list and composer.
Motion-first components that stay free forever.
A brass-light sweep across a pressable button.
Button variants with multiple sizes, states, and icon support.
Pause-on-hover infinite strip. Never locked.
Magnifying icon rail. Never locked.
Headline letters bloom like wet ink on paper.
A brass surface that slowly greens and pits on hover.
Marquee, dock, and shimmer stay free. No license header.
Heroes, pricing, and chrome. One $49 unlock, no seat math.
@patina is public. @patina-pro reads X-License-Key.
We shipped a pricing page the afternoon we bought the key.
The free dock and marquee were enough to trust the rest.
Copy is the full file. No hidden imports. That matters.
Finally a kit that does not turn every site purple.
Finally a kit that does not turn every site purple.
Copy is the full file. No hidden imports. That matters.
The free dock and marquee were enough to trust the rest.
We shipped a pricing page the afternoon we bought the key.
$0 Forever
$49 once
$49 same key, share it