Introduction
36 free components with live examples and copy-paste code, built on Radix UI and Tailwind CSS. Pick a component from the UI Elements menu in the sidebar.
git clone https://github.com/hasraltechno/multidash.git
cd multidash
pnpm install
pnpm devThe shadcn CLI isn't a dependency: npx runs it once and it copies the source into your project, so the code is yours to edit. It needs a components.json, created by npx shadcn@latest init.
components.json, one command adds the component, the components it builds on, its npm packages and the extra theme tokens it uses. Your existing colors are left alone.$ pnpm dlx shadcn@latest add https://multidash-app.vercel.app/r/button.jsonUsing Multidash often? Add the registry to components.json once, then add components by name, e.g. @multidash/button:
{
"registries": {
"@multidash": "https://multidash-app.vercel.app/r/{name}.json"
}
}Want the full Multidash look? Add the theme too. It replaces your color tokens with the Multidash light and dark palette:
$ pnpm dlx shadcn@latest add https://multidash-app.vercel.app/r/multidash-theme.jsonWorking with an AI assistant? Point it at llms.txt — every component page is also available as Markdown.
@multidash/ui package.import { Button } from "@multidash/ui/components/button"
export default function Page() {
return <Button>Click me</Button>
}- 1
Install dependencies
pnpm add radix-ui class-variance-authority clsx tailwind-merge lucide-react tw-animate-css - 2
Add the cn() helper
lib/utils.tsimport { clsx, type ClassValue } from "clsx" import { twMerge } from "tailwind-merge" export function cn(...inputs: ClassValue[]) { return twMerge(clsx(inputs)) } - 3
Add the theme tokens
Copy globals.css into your app and import it in your root layout.
- 4
Copy a component
Open a component from the sidebar and copy its source from the Installation section into
components/ui/.