sh4dcnv2 · atlas
← libraries

@corsair-ui

Copy-and-own React components for Tailwind CSS 3 and 4: forms, overlays, site chrome, motion, animated text and backgrounds.

148 components react shadcn-cli MIT

Install this registry

shadcn (npm) npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/registry.json
pnpm pnpm dlx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/registry.json
bun bunx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/registry.json
fetch registry curl -s https://kevingirelli.github.io/corsair-ui/r/registry.json

Components

148 total
Theme theme

Corsair colour, radius and base styles for light and dark mode. Every component relies on these variables; override --primary, --primary-foreground and --ring …

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/theme.json
Theme: Blue theme

The Corsair theme on a slate base with a blue primary. Installs the theme first, then sets its colours and radius; every text pair meets WCAG AA.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/theme-blue.json
Theme: Violet theme

The Corsair theme on a zinc base with a violet primary. Installs the theme first, then sets its colours and radius; every text pair meets WCAG AA.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/theme-violet.json
Theme: Rose theme

The Corsair theme on a stone base with a rose primary. Installs the theme first, then sets its colours and radius; every text pair meets WCAG AA.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/theme-rose.json
Theme: Emerald theme

The Corsair theme on a zinc base with an emerald primary. Installs the theme first, then sets its colours and radius; every text pair meets WCAG AA.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/theme-emerald.json
Theme: Amber theme

The Corsair theme on a stone base with an amber primary and square corners. Installs the theme first, then sets its colours and radius; every text pair meets W…

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/theme-amber.json
Utils lib

The cn() helper: merges class names and resolves conflicting Tailwind utilities.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/utils.json
getSpotifyTrack lib

Title, artist, cover and preview clip for a Spotify link, read on the server from the public embed page.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/spotify-track.json
Story Export lib

Turns stories into images for Instagram, WhatsApp and TikTok: renderStoryPng() draws JSX to a 1080 × 1920 PNG in the browser with Satori, shareStory() opens th…

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/story-export.json
useMediaQuery hook

Subscribes to a CSS media query. SSR-safe: renders a fallback on the server and hydrates without a mismatch.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/use-media-query.json
useInView hook

Whether an element is in the viewport, from IntersectionObserver, with once, margin and amount options.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/use-in-view.json
useEntrance hook

When a one-shot entrance runs: on first paint, or once in view, without hiding server-rendered content that is already on screen.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/use-entrance.json
useScrollSpy hook

The id of the section on screen, for a table of contents, from one IntersectionObserver. SSR-safe, keeps the last section between two.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/use-scroll-spy.json
Button ui

Triggers an action. Variants default, secondary, outline, ghost, destructive and link; sizes sm, default, lg and three square icon sizes. Supports asChild and …

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/button.json
Spinner ui

Animated status indicator for work in progress, announced as Loading.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/spinner.json
Badge ui

Short status or metadata label. Solid, secondary and outline styles, plus success, warning and destructive statuses shown as a coloured dot.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/badge.json
Label ui

Accessible name for a form control.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/label.json
Input ui

Single-line text control. Its error state comes from aria-invalid, so any form library can drive it.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/input.json
Textarea ui

Multi-line text control with the same states as Input.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/textarea.json
Input Group ui

An input with icons, text or buttons attached on either side.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/input-group.json
Field ui

Layout for a control with its label, description and error, plus fieldset and group helpers. Independent of any form library.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/field.json
Form Field (react-hook-form) ui

FormField: a react-hook-form Controller laid out with Field, with the id, label and ARIA wiring done for you.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/form.json
Checkbox ui

Checkbox with checked, unchecked and indeterminate states.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/checkbox.json
Radio Group ui

A set of options where exactly one can be selected.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/radio-group.json
Switch ui

On/off control for settings that apply immediately.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/switch.json
Select ui

Pick one option from a list, with groups, labels and separators.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/select.json
Separator ui

Horizontal or vertical divider.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/separator.json
Card ui

Container with header, title, description, action, content and footer parts.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/card.json
Flip Card ui

A card with two faces that turns over in 3D on hover, from a trigger, or from a prop.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/flip-card.json
Stamp ui

A rubber stamp that slams onto the page: it starts large and transparent and lands rotated with a small overshoot.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/stamp.json
Alert ui

Callout for important messages on a neutral surface; default, success, warning and destructive tones colour the icon.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/alert.json
Skeleton ui

Placeholder shape shown while content loads.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/skeleton.json
Popover ui

Floating panel anchored to a trigger, with header, title and description parts.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/popover.json
Command ui

Searchable list navigated with the arrow keys; the base for comboboxes and command menus.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/command.json
Calendar ui

Month grid for picking a date, several dates or a range, with dropdown captions and week numbers. Built on DayPicker.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/calendar.json
Date Picker ui

DatePicker and DateRangePicker: a calendar in a popover behind a button that shows the chosen date or range.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/date-picker.json
Combobox ui

A select with a search box, for long lists of options.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/combobox.json
Input OTP ui

One-time code input drawn as separate slots, with paste and autofill support.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/input-otp.json
Slider ui

Pick a number or a range by dragging or with the arrow keys, horizontal or vertical.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/slider.json
Toggle ui

A button that stays pressed, in default and outline variants and three sizes.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/toggle.json
Toggle Group ui

A set of toggles with single or multiple selection, joined or spaced apart.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/toggle-group.json
Segmented Control ui

A switch between two or more options with one thumb that slides to the active one, in three sizes. Never empty.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/segmented-control.json
Number Input ui

Number field with decrement and increment buttons, min, max and step, following the spinbutton keyboard pattern.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/number-input.json
Password Input ui

Password field with a button that shows what was typed.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/password-input.json
Tooltip ui

A short label shown on hover and keyboard focus.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/tooltip.json
Reveal ui

Fades and moves content into place when it scrolls into view, alone or staggered in a group. Visible without JavaScript.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/reveal.json
Text Reveal ui

Reveals text word by word, when it comes into view or tied to the scroll position.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/text-reveal.json
Magnetic ui

Pulls its content toward the mouse while hovered and springs it back on leave.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/magnetic.json
Parallax ui

Drifts content at a different speed from the page as it scrolls past, with CSS scroll-driven animations and no JavaScript.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/parallax.json
Tilt Scroll ui

Content that starts tilted back in perspective and straightens as you scroll, with CSS scroll-driven animations and no JavaScript.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/tilt-scroll.json
Spotlight ui

A soft light that follows the pointer across a surface and along its edge.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/spotlight.json
Animated Border ui

A border with a light travelling around it, paused off screen.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/animated-border.json
Aurora ui

Slow, soft light drifting behind its content, from three radial gradients.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/aurora.json
Signature ui

Draws SVG strokes as if by hand, with optional ink filling in behind the pen, on view or with the scroll.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/signature.json
Path Beam ui

A beam of light travelling along the paths of a flow diagram, one after another, on view, with the scroll or from your own progress.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/path-beam.json
Copy Button ui

An icon button that copies a value and swaps to a check mark, announcing it to screen readers.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/copy-button.json
Dash Button ui

A pill button whose fill gives way to a dashed outline that marches on hover.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dash-button.json
Color Swatches ui

Pick one colour from a row of swatches: a radio group with arrow keys and form support.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/color-swatches.json
Bars Spinner ui

Twelve bars around a hub fading in turn, announced as Loading. No JavaScript.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/bars-spinner.json
Shimmer Text ui

A band of light sweeping across text now and then, paused off screen.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/shimmer-text.json
Blur Text ui

Text that comes into focus one character at a time, and can blur back out.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/blur-text.json
Slide Text ui

Words, characters or lines rising into place from below their own baseline.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/slide-text.json
Flip Text ui

Kinetic type in 3D: characters or words turning into place around their horizontal axis, one after another.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/flip-text.json
Split Flap ui

A split-flap board: when the value changes, only the characters that changed flip, like a departure board.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/split-flap.json
Dissolve Text ui

Words or characters surfacing at scattered moments, the same on server and client.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dissolve-text.json
Highlight Text ui

A marker that slides in behind a phrase, or a hand-drawn line drawn under it.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/highlight-text.json
Scramble Text ui

Text that decodes itself: noise sweeps across, then each character locks in.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/scramble-text.json
Wave Text ui

Bands of colour washing through text like a swell, on one CSS animation.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/wave-text.json
Text Signature ui

Writes any text in any font as a signature: outlines drawn by the pen, then inked.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/text-signature.json
Marquee ui

Content scrolling in a seamless loop, pausing on focus and off screen, and draggable by the pointer.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/marquee.json
Line Chart ui

One series as a line, with a cursor that snaps to points; a slider for keyboards and screen readers.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/line-chart.json
QR Code ui

A crisp SVG QR code in dots, rounded or square modules. Renders on the server, and can draw itself in.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/qr-code.json
Tweet Card ui

A post from X in your theme, with no embed script: a card, a server component that fetches by id, and a client one.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/tweet-card.json
Spotify Card ui

A track card with cover art, a link to Spotify and a preview clip that spins a record while it plays.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/spotify-card.json
Light Rays ui

Soft beams of light falling from above, from a small WebGL2 shader.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/light-rays.json
Warp Gradient ui

A liquid field of colour carried along by layered noise, from one WebGL2 shader.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/warp-gradient.json
Dialog ui

Modal window centred over the page, with a focus trap, overlay, close button, header, footer, title and description parts.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dialog.json
Alert Dialog ui

Modal that asks the user to confirm or cancel before an action, with action and cancel buttons.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/alert-dialog.json
Sheet ui

Dialog that slides in from any edge of the screen, for menus, filters and side panels.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/sheet.json
Toast ui

Brief notifications shown with a toast() call and a Toaster mounted once, with variants, an optional action, swipe to dismiss and screen reader announcements.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/toast.json
Nav Link ui

A navigation link that marks the current page with aria-current and data-active. Supports asChild for router links.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/nav-link.json
Site Header ui

A sticky page header with brand, navigation, actions and a sheet menu for small screens, flagging data-scrolled once the page scrolls.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/site-header.json
Dock ui

A floating bar of icon links pinned to the bottom or top of the viewport, with tooltips and an optional reveal after scrolling.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dock.json
Tabs ui

Sections of content shown one at a time, with a segmented or underlined tab list, horizontal or vertical.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/tabs.json
Avatar ui

A round picture of a person with a fallback while it loads or when it fails, in three sizes, plus an overlapping group.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/avatar.json
Rating ui

Stars for giving a score as a radio group, or for showing one read-only with fractional fills.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/rating.json
Wave Rating ui

The rating, animated: sweeping a finger, pen or mouse across the stars lifts them in a wave that crests under the pointer, a tip shows the score, and letting g…

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/wave-rating.json
Stat ui

Key figures as a description list: label, value and a caption with an optional trend arrow.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/stat.json
Number Ticker ui

A number that counts up to its value when it comes into view, formatted for the locale.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/number-ticker.json
Code Block ui

A block of code with an optional caption, a language label and a copy button.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/code-block.json
Corner Frame ui

A box with bracket marks on its corners, in any size, thickness, colour and inset.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/corner-frame.json
Phone Frame ui

A generic phone drawn in CSS around a screenshot or any content, with an island, a notch or no cut-out, that scales with its width.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/phone-frame.json
Browser Frame ui

A browser window drawn in CSS around a page or a screenshot, with window dots, an address field and optional actions.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/browser-frame.json
YouTube Embed ui

A YouTube video that costs one poster image until it is played, with player controls through its ref.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/youtube-embed.json
Carousel ui

Slides on a native scroll-snap track, with keyboard steps, previous and next buttons, dots and an optional coverflow look.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/carousel.json
Preloader ui

A full-screen cover that counts to 100 on first load, waits for your content to be ready, then fades out.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/preloader.json
Custom Cursor ui

A dot and a trailing ring that follow a mouse pointer, growing over interactive elements and showing labels.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/custom-cursor.json
Scroll Progress ui

A reading progress bar that fills as the page scrolls, with CSS scroll-driven animations and no JavaScript.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/scroll-progress.json
Scroll Background ui

A background that blends from one colour to the next as you scroll, with CSS scroll-driven animations and no JavaScript.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/scroll-background.json
Scroll Scene ui

A scrollytelling scene: a stage pinned beside steps, crossfading to the slide of the step on screen, with a 0 to 1 scroll progress variable for scrubbing.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/scroll-scene.json
Wipe Transition ui

Switches content behind a band that sweeps across it, swapping while covered, with a crossfade for phones and reduced motion.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/wipe-transition.json
Smooth Scroll ui

Smooth wheel and trackpad scrolling for the page, off with reduced motion, with a scrollTo hook that works either way.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/smooth-scroll.json
Grain ui

Film grain over a surface, from a tile of SVG noise, with an optional stepped jitter.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/grain.json
Hover Reveal ui

A second layer seen through a soft circle that follows the pointer.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/hover-reveal.json
Particles ui

Dots drifting slowly across a surface, laid out from a seed and moved with CSS alone.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/particles.json
Topography ui

Contour lines like a topographic map over slowly shifting terrain, from one WebGL2 shader.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/topography.json
Roll Text ui

Characters that roll up to a copy of themselves on hover or keyboard focus.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/roll-text.json
Dropdown Menu ui

A menu of actions and options that opens from a button, with checkbox and radio items, labels, shortcuts and submenus.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dropdown-menu.json
Context Menu ui

A menu of actions for an area of the page that opens on right click or long press, with checkbox and radio items, labels, shortcuts and submenus.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/context-menu.json
Navigation Menu ui

Site navigation with links and triggers that open panels of links in a shared, animated viewport.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/navigation-menu.json
Hover Card ui

A preview card that appears while a link is hovered or focused, for supplementary content.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/hover-card.json
Accordion ui

Stacked sections that open and close under their headings, one or several at a time, with a height animation.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/accordion.json
Collapsible ui

A region that a trigger button shows and hides, with a height animation.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/collapsible.json
Progress ui

A progress bar for tasks with a known amount, or an indeterminate one when the amount is unknown.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/progress.json
Scroll Area ui

A scrolling box with thin themed scrollbars that keeps native scrolling.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/scroll-area.json
Breadcrumb ui

The trail of links from the top of a site to the current page, with separators and an ellipsis.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/breadcrumb.json
Pagination ui

Page links with previous and next, an ellipsis, and a helper that works out which page numbers to show.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/pagination.json
Table ui

A data table on native table elements, with a scroll container, selected rows and sortable column headers.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/table.json
Sidebar ui

An application sidebar that collapses to icons or off canvas on desktop and opens as a sheet on mobile, with a keyboard shortcut.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/sidebar.json
Drawer ui

A bottom sheet dialog for phones that can also be dragged down to close.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/drawer.json
Data Table ui

A table with sortable headers, a text filter, pagination and row selection, built on TanStack Table v9.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/data-table.json
Dropzone ui

A file drop area on a native file input that checks type, size and count, and lists the chosen files.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dropzone.json
Kbd ui

A key or key combination shown as a small keycap, alone or in a group.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/kbd.json
Empty State ui

What a list, table or page shows when it has nothing in it yet, with an icon, title, description and actions.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/empty-state.json
Stepper ui

The steps of a multi-step flow with complete, current and upcoming states, horizontal or vertical.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/stepper.json
Timeline ui

A vertical list of events with a coloured dot for each status and a line joining them.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/timeline.json
Resizable ui

Panels resized by dragging or with the keyboard, side by side or stacked.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/resizable.json
Bar Chart ui

One series as vertical or horizontal bars that grow in on first view, with a keyboard slider over the bars.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/bar-chart.json
Area Chart ui

One or more series as gradient-filled areas, stacked or overlapping, with a legend and a keyboard slider over the points.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/area-chart.json
Donut Chart ui

Parts of a whole as a ring with the total in the middle and a keyboard-navigable legend of values and shares.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/donut-chart.json
Story Frame ui

A 9:16 story preview that is the exported PNG itself, with Share (the phone's share sheet, Instagram included), Download and Copy link, and the safe area the a…

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/story-frame.json
Story ui

A 1080 × 1920 story put together from parts (header, eyebrow, title, grid of tiles, list of rows, highlight, image, call to action), laid out inside the safe a…

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/story.json
Hero block

The opening section of a landing page with an eyebrow, a title, a description, actions and an optional media slot.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/hero.json
Feature Grid block

A grid of features with an icon, a title and a description under a centred section header.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/feature-grid.json
Stats block

A row of key figures that count up when they scroll into view, under a centred section header.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/stats.json
Logo Cloud block

Customer or partner logos in a grid or a scrolling marquee under a small title.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/logo-cloud.json
Call to Action block

A closing band with a title, a description and one or two actions.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/cta.json
Pricing block

A pricing section with plan cards, a featured plan and an optional monthly or yearly billing switch.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/pricing.json
FAQ block

A frequently asked questions section with a header and the answers in an accordion, split or stacked.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/faq.json
Testimonials block

A section of customer quotes with names, roles and avatars, in a masonry or grid layout.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/testimonials.json
Contact Form block

A contact section with a header, contact details and a validated message form that reports pending, success and error states.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/contact-form.json
Newsletter block

A compact sign-up band with an inline email form that reports pending, success and error states.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/newsletter.json
Site Footer block

A page footer with a brand, link columns in a navigation landmark, a copyright line and optional social icon links.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/site-footer.json
Login Form block

A centred sign-in card with email and password fields, a remember-me checkbox, optional sign-in providers and pending, success and error states.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/login-form.json
Signup Form block

A centred sign-up card with name, email and password fields, a required terms checkbox, optional sign-up providers and pending, success and error states.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/signup-form.json
Not Found block

A 404 page section with a large decorative error code, a page heading, a description, an optional search slot and actions.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/not-found.json
Dashboard block

An application page with a collapsible sidebar, a header, stat cards, a line chart and a recent-activity table.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/dashboard.json
Settings block

An account settings page with tabs for a profile form, a password change and delete-account dialog, and notification switches.

npx shadcn@latest add https://kevingirelli.github.io/corsair-ui/r/settings.json