Command
basecn/commandFreeComponent
Fast, composable, unstyled command menu for React.
Live preview
live · rendered by the registry
Rendered by basecn on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://basecn.dev/r/command.jsonSource
1"use client";23import * as React from "react";4import { Command as CommandPrimitive } from "cmdk";5import { SearchIcon } from "lucide-react";67import { cn } from "@/lib/utils";8import {9 Dialog,10 DialogContent,11 DialogDescription,12 DialogHeader,13 DialogTitle,14} from "@/registry/components/ui/dialog";1516function Command({17 className,18 ...props19}: React.ComponentProps<typeof CommandPrimitive>) {20 return (21 <CommandPrimitive22 data-slot="command"23 className={cn(24 "bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md",25 className26 )}27 {...props}28 />29 );30}3132function CommandDialog({33 title = "Command Palette",34 description = "Search for a command to run...",35 children,36 className,37 showCloseButton = true,38 ...props39}: React.ComponentProps<typeof Dialog> & {40 title?: string;41 description?: string;42 className?: string;43 showCloseButton?: boolean;44 children: React.ReactNode;45}) {46 return (47 <Dialog {...props}>48 <DialogHeader className="sr-only">49 <DialogTitle>{title}</DialogTitle>50 <DialogDescription>{description}</DialogDescription>51 </DialogHeader>52 <DialogContent53 className={cn("overflow-hidden p-0", className)}54 showCloseButton={showCloseButton}55 >56 <Command className="[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5">57 {children}58 </Command>59 </DialogContent>60 </Dialog>61 );62}6364function CommandInput({65 className,66 ...props67}: React.ComponentProps<typeof CommandPrimitive.Input>) {68 return (69 <div70 data-slot="command-input-wrapper"71 className="flex h-9 items-center gap-2 border-b px-3"72 >73 <SearchIcon className="size-4 shrink-0 opacity-50" />74 <CommandPrimitive.Input75 data-slot="command-input"76 className={cn(77 "placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",78 className79 )}80 {...props}81 />82 </div>83 );84}8586function CommandList({87 className,88 ...props89// … truncated
What it pulls in
npm packages
Other registry items
Files it writes
More from basecn
All 56 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | basecn | Components | Free | 2 deps | |
| Alertalert | basecn | Components | Free | 1 dep | |
| Alert Dialogalert-dialog | basecn | Components | Free | 1 dep | |
| Aspect Ratioaspect-ratio | basecn | Components | Free | no deps | |
| Autocompleteautocomplete | basecn | Components | Free | 2 deps | |
| Avataravatar | basecn | Components | Free | 1 dep | |
| Badgebadge | basecn | Components | Free | 2 deps | |
| Breadcrumbbreadcrumb | basecn | Components | Free | 2 deps |
