{ "$schema": "https://ui.shadcn.com/schema/registry.json", "name": "espresso", "homepage": "https://espresso-base-ui.vercel.app", "items": [ { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "espresso-font", "type": "registry:font", "title": "Inter", "description": "Inter variable font used by Espresso UI.", "font": { "family": "Inter, sans-serif", "provider": "google", "import": "Inter", "variable": "--font-sans", "subsets": ["latin"], "dependency": "@fontsource-variable/inter" } }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "espresso-theme", "type": "registry:style", "title": "Espresso Theme", "description": "Espresso UI design tokens and color system.", "devDependencies": [ "shadcn" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-font.json" ], "files": [ { "path": "registry/espresso/espresso-theme/globals.css", "type": "registry:file", "target": "~/app/globals.css" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "button", "type": "registry:ui", "title": "Button", "description": "A button component with variants, sizes, and icon support.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/button/button.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "button-group", "type": "registry:ui", "title": "Button Group", "description": "Groups buttons together with shared layout and sizing.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/separator.json" ], "files": [ { "path": "registry/espresso/button-group/button-group.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "alert", "type": "registry:ui", "title": "Alert", "description": "Alert component with variants, types, and action slots.", "dependencies": [ "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json" ], "files": [ { "path": "registry/espresso/alert/alert.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "avatar", "type": "registry:ui", "title": "Avatar", "description": "Avatar component with sizes, variants, badges, and groups.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/avatar/avatar.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "badge", "type": "registry:ui", "title": "Badge", "description": "Badge component with variants and sizes.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/badge/badge.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "breadcrumb", "type": "registry:ui", "title": "Breadcrumb", "description": "Breadcrumb navigation with sizes and custom separators.", "dependencies": [ "@base-ui/react", "lucide-react" ], "files": [ { "path": "registry/espresso/breadcrumb/breadcrumb.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "calendar", "type": "registry:ui", "title": "Calendar", "description": "Calendar component built on React Day Picker.", "dependencies": [ "react-day-picker", "lucide-react" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json" ], "files": [ { "path": "registry/espresso/calendar/calendar.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "checkbox", "type": "registry:ui", "title": "Checkbox", "description": "Checkbox with size variants and indeterminate state.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/checkbox/checkbox.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "dialog", "type": "registry:ui", "title": "Dialog", "description": "Modal dialog with size variants and close button.", "dependencies": [ "@base-ui/react", "class-variance-authority", "lucide-react" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json" ], "files": [ { "path": "registry/espresso/dialog/dialog.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "dropdown-menu", "type": "registry:ui", "title": "Dropdown Menu", "description": "Dropdown menu with items, checkboxes, radios, and submenus.", "dependencies": [ "@base-ui/react", "lucide-react" ], "files": [ { "path": "registry/espresso/dropdown-menu/dropdown-menu.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "field", "type": "registry:ui", "title": "Field", "description": "Form field with label, description, error, and layout variants.", "dependencies": [ "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/label.json", "https://espresso-base-ui.vercel.app/r/separator.json" ], "files": [ { "path": "registry/espresso/field/field.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "header", "type": "registry:ui", "title": "Header", "description": "Page header with left, center, and right control slots.", "files": [ { "path": "registry/espresso/header/header.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "input", "type": "registry:ui", "title": "Input", "description": "Input with outline/subtle variants and size options.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/input/input.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "input-group", "type": "registry:ui", "title": "Input Group", "description": "Input group with addons, icons, and buttons.", "dependencies": [ "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json", "https://espresso-base-ui.vercel.app/r/input.json", "https://espresso-base-ui.vercel.app/r/textarea.json" ], "files": [ { "path": "registry/espresso/input-group/input-group.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "item", "type": "registry:ui", "title": "Item", "description": "List item with media, content, actions, and layout slots.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/separator.json" ], "files": [ { "path": "registry/espresso/item/item.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "kbd", "type": "registry:ui", "title": "Kbd", "description": "Keyboard key indicator.", "files": [ { "path": "registry/espresso/kbd/kbd.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "label", "type": "registry:ui", "title": "Label", "description": "Accessible label component.", "dependencies": [ "@base-ui/react" ], "files": [ { "path": "registry/espresso/label/label.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "notification", "type": "registry:ui", "title": "Notification", "description": "Toast notification with variants and action types.", "dependencies": [ "class-variance-authority" ], "files": [ { "path": "registry/espresso/notification/notification.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json", "https://espresso-base-ui.vercel.app/r/toast.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "popover", "type": "registry:ui", "title": "Popover", "description": "Popover with positioning and header/title/description.", "dependencies": [ "@base-ui/react" ], "files": [ { "path": "registry/espresso/popover/popover.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "progress", "type": "registry:ui", "title": "Progress", "description": "Progress bar with sizes, edge styles, and segmented type.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/progress/progress.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "radio-group", "type": "registry:ui", "title": "Radio Group", "description": "Radio group with size variants.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/radio-group/radio-group.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "rating", "type": "registry:ui", "title": "Rating", "description": "Star rating component with keyboard navigation.", "dependencies": [ "lucide-react" ], "files": [ { "path": "registry/espresso/rating/rating.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "select", "type": "registry:ui", "title": "Select", "description": "Select with variants, sizes, groups, scroll arrows, and auto-icon items.", "dependencies": [ "@base-ui/react", "class-variance-authority", "lucide-react" ], "files": [ { "path": "registry/espresso/select/select.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "separator", "type": "registry:ui", "title": "Separator", "description": "Horizontal/vertical separator with optional slot content.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/separator/separator.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "sheet", "type": "registry:ui", "title": "Sheet", "description": "Slide-out sheet/drawer panel.", "dependencies": [ "@base-ui/react", "lucide-react" ], "files": [ { "path": "registry/espresso/sheet/sheet.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "skeleton", "type": "registry:ui", "title": "Skeleton", "description": "Loading placeholder skeleton.", "files": [ { "path": "registry/espresso/skeleton/skeleton.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "slider", "type": "registry:ui", "title": "Slider", "description": "Slider with size variants and range support.", "dependencies": [ "@base-ui/react" ], "files": [ { "path": "registry/espresso/slider/slider.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "sonner", "type": "registry:ui", "title": "Sonner", "description": "Toast notifications via Sonner.", "dependencies": [ "sonner", "next-themes", "lucide-react" ], "files": [ { "path": "registry/espresso/sonner/sonner.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "toast", "type": "registry:ui", "title": "Toast", "description": "Toast notifications built on Base UI with success, info, warning, error, and loading types.", "dependencies": [ "@base-ui/react", "lucide-react" ], "files": [ { "path": "registry/espresso/toast/toast.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "spinner", "type": "registry:ui", "title": "Spinner", "description": "Loading spinner with size variants and optional track.", "dependencies": [ "class-variance-authority" ], "files": [ { "path": "registry/espresso/spinner/spinner.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "switch", "type": "registry:ui", "title": "Switch", "description": "Toggle switch with size variants.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/switch/switch.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "table", "type": "registry:ui", "title": "Table", "description": "Table with header, body, footer, and row hover effects.", "files": [ { "path": "registry/espresso/table/table.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "tabs", "type": "registry:ui", "title": "Tabs", "description": "Tabs with sliding indicator, variants, and sizes.", "dependencies": [ "@base-ui/react", "class-variance-authority" ], "files": [ { "path": "registry/espresso/tabs/tabs.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "tag", "type": "registry:ui", "title": "Tag", "description": "Tag component with variants, sizes, and close icon.", "dependencies": [ "class-variance-authority" ], "files": [ { "path": "registry/espresso/tag/tag.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "textarea", "type": "registry:ui", "title": "Textarea", "description": "Textarea with outline/subtle/ghost variants and sizes.", "dependencies": [ "class-variance-authority" ], "files": [ { "path": "registry/espresso/textarea/textarea.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "tooltip", "type": "registry:ui", "title": "Tooltip", "description": "Tooltip with arrow and positioning.", "dependencies": [ "@base-ui/react" ], "files": [ { "path": "registry/espresso/tooltip/tooltip.tsx", "type": "registry:ui" } ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "card", "type": "registry:ui", "title": "Card", "description": "A card container component with sm, md, lg, and xl size variants.", "dependencies": [ "class-variance-authority" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/card/card.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "collapsible", "type": "registry:ui", "title": "Collapsible", "description": "A collapsible content section with trigger.", "dependencies": [ "@base-ui/react" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/collapsible/collapsible.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "scroll-area", "type": "registry:ui", "title": "Scroll Area", "description": "A scroll area component with custom scrollbar.", "dependencies": [ "@base-ui/react" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/scroll-area/scroll-area.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "sidebar", "type": "registry:ui", "title": "Sidebar", "description": "A sidebar layout component with collapsible, rail, and menu support.", "dependencies": [ "@base-ui/react", "class-variance-authority", "lucide-react" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/button.json", "https://espresso-base-ui.vercel.app/r/separator.json", "https://espresso-base-ui.vercel.app/r/sheet.json", "https://espresso-base-ui.vercel.app/r/tooltip.json", "https://espresso-base-ui.vercel.app/r/input.json", "https://espresso-base-ui.vercel.app/r/skeleton.json" ], "files": [ { "path": "registry/espresso/sidebar/sidebar.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "sub-header", "type": "registry:ui", "title": "Sub Header", "description": "A sub-header bar with left and right content slots.", "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/sub-header/sub-header.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "empty", "type": "registry:ui", "title": "Empty", "description": "Empty state component for lists, tables, and other content areas.", "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/empty/empty.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "combobox", "type": "registry:ui", "title": "Combobox", "description": "Autocomplete input with single/multi-select, chips, and grouping.", "dependencies": [ "@base-ui/react" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/input-group.json", "https://espresso-base-ui.vercel.app/r/button.json" ], "files": [ { "path": "registry/espresso/combobox/combobox.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "command", "type": "registry:ui", "title": "Command", "description": "Command palette with inline and dialog modes powered by cmdk.", "dependencies": [ "cmdk" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json", "https://espresso-base-ui.vercel.app/r/dialog.json", "https://espresso-base-ui.vercel.app/r/input-group.json" ], "files": [ { "path": "registry/espresso/command/command.tsx", "type": "registry:ui" } ] }, { "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "input-otp", "type": "registry:ui", "title": "Input OTP", "description": "One-time-password input with slots and separators.", "dependencies": [ "input-otp" ], "registryDependencies": [ "https://espresso-base-ui.vercel.app/r/espresso-theme.json" ], "files": [ { "path": "registry/espresso/input-otp/input-otp.tsx", "type": "registry:ui" } ] } ] }