Craft
Browse templates, component showcases, and examples. Copy the source code to get started.Page Templates (33)
AI ChatAI assistant conversation view with tool calls, system messages, markdown, code blocks, and multi-bubble grouping
Component ReferenceComponent documentation page with live preview, usage guide, best practices table, and code examples.
Dashboard (Portfolio)Investment portfolio dashboard with KPI metrics, area chart, and top asset holdings
Documentation HomeDocumentation landing page with hero banner and component category grid organized by Core, Layout, Navigation, and Form.
Gallery HeroCentered headline, description, and CTA buttons above a three-image gallery grid.Coming Soon
IDECode editor workspace with file explorer, tabbed editor, terminal panel, and properties sidebar — all resizable and collapsible.
Settings (Dialog)Account settings in a modal dialog with sidebar navigation and multi-section content
Settings (Sidebar)Account settings with sidebar navigation, inline editing, and multi-section privacy controls
Setup GuideGetting started guide with install steps, AI assistance prompt card, theming setup, and next steps.
Component Showcases (132)
AvatarAvatars at every size with an image, initials fallback, and a status dot. A quick visual reference for choosing the right size.
AvatarStatusDotAvatarStatusDot renders a presence indicator on an Avatar, with variants for positive, neutral, and negative states. The dot size automatically coordinates with the Avatar size.
Badge — VariantsAll semantic and color badge variants in a single view. Use semantic variants for status and color variants for categories.
Banner — StatusesAll four status banners stacked — info, success, warning, and error. A quick visual reference for choosing the right status.
BreadcrumbItemBreadcrumbItem represents a single step in a breadcrumb trail, supporting links, icons, current-page markers, and custom link components.
Button — VariantsAll four button variants side by side — primary, secondary, ghost, and destructive. A quick visual reference for choosing the right variant.
CalendarAn interactive single-date calendar with a selected date. Click any day to change the selection.
CarouselA horizontal carousel of cards with scroll-snap and navigation buttons. Scroll or click the arrows to browse.
ChatComposerDrawerComposer drawer with file tokens, a collapsible toggle, and header actions. Use as a starting point for any chat composer with attachments.
ChatDictationButtonInteractive dictation button connected to the SpeechRecognition API via useXDSChatDictation. Click the mic to dictate into the composer.
ChatLayoutScrollButtonScroll button in hidden, visible, and expanded (with label) states. The button fades in when the user scrolls up and expands when new messages arrive.
ChatMessageA user multi-bubble group with delivery status and an assistant ghost response with avatar, name, timestamp, and model info.
ChatMessageBubbleGrouped user bubbles with filled styling and a ghost-variant agent response, with timestamps and delivery status.
ChatMessageListBasic AI chat conversation with user and assistant messages. The simplest way to render a message list with alternating sender bubbles, metadata, and a date divider.
ChatMessageMetadataThree-message conversation showcasing error status with retry, delivery status, and full footer actions with model label.
ChatSystemMessageSystem messages for date dividers, status updates, and informational notices. Shows both default and divider variants in a realistic conversation flow.
CheckboxInputInteractive checkboxes showing checked, unchecked, and indeterminate states with descriptions.
CheckboxListItemCheckbox list items with labels, descriptions, and different states including disabled.
ClickableCardA clickable card that navigates on click. Nested interactive elements work independently.
CodeBlockA syntax-highlighted TypeScript code block with line numbers, a title bar, and a copy button.
CollapsibleAn accordion group with three collapsible sections in single mode — opening one closes the others.
CollapsibleGroupCollapsibleGroup coordinates multiple Collapsible components so that expanding one can automatically collapse the others, creating accordion behavior.
CommandPaletteGroupCommand palette groups in both data-driven (auxiliaryData.group) and composed (XDSCommandPaletteGroup + XDSCommandPaletteItem) forms.
CommandPaletteItemCommand palette items with custom content via renderItem and as composed XDSCommandPaletteItem with icons, highlighted, selected, and disabled states.
DateInputA date input field with a calendar popover. Type a date or click the calendar icon to pick one.
DialogHeaderDialogHeader provides a structured header for dialogs with slots for title, subtitle, close button, and optional start or end content.
Divider — VariantsHorizontal dividers in subtle and strong variants, plus a labeled divider. A quick visual reference for separator styles.
DropdownMenuA button that opens a dropdown menu with action items. The menu starts open for preview.
DropdownMenuItemDropdown menu with custom-rendered items using XDSDropdownMenuItem for icons and descriptions.
FieldStatusField status messages in error, warning, and success states with attached and detached variants.
GridSpanGridSpan lets a grid item span multiple columns or rows within an XDSGrid, enabling masonry-style and asymmetric layouts.
HoverCardA hover card that shows a user profile preview when hovering over a trigger button. Starts open for preview.
LayoutContentLayoutContent is the scrollable main content area within a Layout, providing automatic padding and scroll containment between the header and footer.
LayoutFooterLayoutFooter is a fixed footer slot within a Layout, pinned to the bottom for persistent actions like form buttons or navigation.
LayoutHeaderLayoutHeader is a fixed header slot within a Layout, pinned to the top for titles, navigation, and action buttons.
LayoutPanelLayoutPanel is a sidebar slot within a Layout, used for navigation, detail views, or secondary content alongside the main content area.
ListItemList items with icons, descriptions, and end content slots demonstrating the full ListItem API.
MetadataListItemMetadata list items displaying labeled values in various formats including text, badges, and links.
MobileNavToggleDemonstrates XDSMobileNavToggle as a standalone hamburger button for opening the mobile navigation drawer.
Pagination — VariantsAll four display variants stacked — dots, compact, count, and pages. A quick visual reference for choosing the right variant.
Section — VariantsAll three background variants stacked — section (default surface), wash (muted), and transparent. A quick visual reference for choosing the right variant.
SelectableCardA plan picker with single-select radio behavior. Cards show an accent border when selected.
SelectorOptionSelector with custom-rendered options using XDSSelectorOption for icons and descriptions.
SideNavHeadingDemonstrates XDSSideNavHeading with an app name, logo icon, superheading, and subheading.
StackItemStackItem can be used within XDSHStack or XDSVStack for more granular control over individual item sizing and alignment, but is optional — stack children work without it.
TabTab is an individual tab item within a TabList, supporting labels, icons, selected icons, and end content slots.
TabMenuTabMenu is an overflow menu within a TabList that groups additional tab options into a dropdown, showing the selected option\
ToggleButtonGroupToggleButtonGroup manages a set of ToggleButtons with single-select or multi-select behavior for options like view modes or filters.
Toolbar — Three SlotA toolbar with start, center, and end content using the three-column grid layout. Use when you need a centered title or heading with navigation and actions on either side.
TopNavHeadingDemonstrates XDSTopNavHeading with a logo and text, both as a plain display and as a clickable link.
TopNavMegaMenuFeaturedCardDemonstrates XDSTopNavMegaMenuFeaturedCard with a title, description, and CTA link inside a mega menu.
TopNavMegaMenuItemDemonstrates XDSTopNavMegaMenuItem with icons, titles, and descriptions inside a mega menu.
TopNavMenuDemonstrates XDSTopNavMenu with a hover-triggered dropdown containing items with icons and descriptions.
TreeListItemTree items with descriptions, icons, badges, selection, disabled state, and nested expand/collapse. TreeList is data-driven — no composed children API.