Component Demo
Vertical Layout Example
This is a basic vertical layout. Content stacks in a single column.
Layout components for building feature sections, CTAs, and content blocks.
Two-column layout with slots for content and visuals. Inspired by Nuxt UI PageHero/PageCTA.
| Prop | Type | Default | Description |
|---|---|---|---|
as | string | 'section' | HTML element to render |
headline | string | - | Small text above title |
title | string | - | Main section title |
description | string | - | Section description text |
orientation | 'vertical' | 'horizontal' | 'vertical' | Layout direction |
reverse | boolean | false | Swap content/visual order |
variant | 'default' | 'muted' | 'dark' | 'default' | Background style |
links | PageSectionLink[] | - | CTA buttons |
align | 'start' | 'center' | 'end' | 'center' | Vertical alignment |
contained | boolean | true | Constrain max-width |
| Slot | Description |
|---|---|
top | Content above the main container |
header | Override headline + title + description |
headline | Custom headline content |
title | Custom title content |
description | Custom description content |
body | Content between description and footer |
footer | Override links area |
links | Custom link buttons |
default | Visual side content (images, marquees, etc.) |
bottom | Content below the main container |
Individual feature block with icon, title, and description.
| Prop | Type | Default | Description |
|---|---|---|---|
icon | Component | - | Lucide icon component |
title | string | required | Feature title |
description | string | - | Feature description |
orientation | 'horizontal' | 'vertical' | 'horizontal' | Layout direction |
href | string | - | Link destination |
target | string | - | Link target |
| Slot | Description |
|---|---|
icon | Custom icon content |
title | Custom title content |
description | Custom description content |
Renders an array of FeatureItems with consistent spacing.
| Prop | Type | Default | Description |
|---|---|---|---|
items | FeatureItemData[] | - | Array of feature objects |
orientation | 'horizontal' | 'vertical' | 'horizontal' | Item layout |
gap | 'sm' | 'md' | 'lg' | 'md' | Space between items |
direction | 'column' | 'row' | 'column' | List stack direction |
interface FeatureItemData {
icon?: Component // Lucide icon
title: string // Required
description?: string
href?: string
}Animated loading placeholder for development and loading states.
| Prop | Type | Default | Description |
|---|---|---|---|
as | string | 'div' | HTML element to render |
width | string | - | CSS width value |
height | string | - | CSS height value |
rounded | 'none' | 'sm' | 'md' | 'lg' | 'full' | 'md' | Border radius |
static | boolean | false | Disable animation |
Visual placeholder with diagonal line pattern. Inspired by Nuxt UI. Use for layout mockups and where content will be added.
| Prop | Type | Default | Description |
|---|---|---|---|
width | string | - | CSS width value |
height | string | - | CSS height value |
aspectRatio | string | - | CSS aspect-ratio (e.g., '16/9') |
rounded | 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full' | 'lg' | Border radius |
label | string | - | Optional label text |
A full-featured section combining multiple elements: