
SmoothUI is a collection of beautifully designed components with smooth animations built with React, Tailwind CSS, and Motion. This project aims to provide developers with a set of reusable UI components that enhance user experience through delightful animations and modern design patterns.
Get started with SmoothUI in just one command:
# Using SmoothUI CLI (recommended)
npx smoothui-cli add siri-orb
# Or using shadcn CLI
npx shadcn@latest add @smoothui/siri-orb
Then use the component:
import { SiriOrb } from "@/components/smoothui/ui/SiriOrb";
export default function App() {
return <SiriOrb size="200px" />;
}
The SmoothUI CLI provides an interactive way to browse and install components with automatic dependency resolution.
# Add a single component
npx smoothui-cli add siri-orb
# Add multiple components
npx smoothui-cli add siri-orb rich-popover animated-input
# Interactive mode - browse and select components
npx smoothui-cli add
# List all available components
npx smoothui-cli list
Features:
SmoothUI is an official shadcn registry, so you can install components directly using the @smoothui namespace:
# Install a single component
npx shadcn@latest add @smoothui/siri-orb
# Install multiple components
npx shadcn@latest add @smoothui/rich-popover @smoothui/animated-input
If you prefer to install components manually, you can copy the component files directly:
pnpm add motion tailwindcss lucide-react clsx tailwind-merge
Copy component files from the components directory
Set up utilities:
# Create lib/utils/cn.ts
mkdir -p lib/utils
// lib/utils/cn.ts
import { clsx, type ClassValue } from "clsx";
import { twMerge } from "tailwind-merge";
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs));
}
import { SiriOrb } from "@/components/smoothui/ui/SiriOrb";
export default function App() {
return (
<SiriOrb
size="200px"
colors={{
bg: "oklch(95% 0.02 264.695)",
c1: "oklch(75% 0.15 350)",
c2: "oklch(80% 0.12 200)",
c3: "oklch(78% 0.14 280)",
}}
animationDuration={20}
/>
);
}
import { RichPopover } from "@/components/smoothui/ui/RichPopover";
import { ScrollableCardStack } from "@/components/smoothui/ui/ScrollableCardStack";
export default function Dashboard() {
const cards = [
{
id: "1",
name: "John Doe",
handle: "@johndoe",
avatar: "/avatars/john.jpg",
video: "/videos/john.mp4",
href: "https://twitter.com/johndoe",
},
// ... more cards
];
return (
<RichPopover />
<ScrollableCardStack items={cards} />
);
}
SmoothUI includes a wide variety of components:
SmoothUI is fully compatible with the shadcn MCP server, enabling AI assistants to discover and install components automatically.
With MCP support, AI assistants like Claude, Cursor, and GitHub Copilot can:
components.json:{
"registries": {
"@smoothui": "https://smoothui.dev/r/{name}.json"
}
}
npx shadcn@latest mcp init --client claude
# or for Cursor: npx shadcn@latest mcp init --client cursor
# or for VS Code: npx shadcn@latest mcp init --client vscode
Try these prompts:
"Show me the components in the smoothui registry"
Learn more about MCP support →
SmoothUI uses a custom registry system compatible with shadcn CLI v3. Each component includes:
cn are automatically bundledWhen you install a component, you get:
components/smoothui/ui/
├── ComponentName.tsx # Main component file
lib/utils/
└── cn.ts # Utility functions (if needed)
Error: You are not authorized to access the item
Solution: This usually happens with Vercel preview deployments. Use the production URL:
{
"registries": {
"@smoothui": "https://smoothui.dev/r/{name}.json"
}
}
Error: The item at https://smoothui.dev/r/registry.json was not found
Solution: The search command might not work as expected. Install components directly:
npx shadcn@latest add @smoothui/siri-orb
Error: Cannot find module '@/lib/utils/cn'
Solution: Make sure your tsconfig.json includes the path alias:
{
"compilerOptions": {
"paths": {
"@/*": ["./src/*"]
}
}
}
Error: Cannot find module 'clsx'
Solution: Install missing dependencies:
pnpm add clsx tailwind-merge motion
We welcome contributions! Please see our Contributing Guide for details.
git clone https://github.com/educlopez/smoothui.git
cd smoothui
pnpm install
pnpm dev
pnpm run build:registry
This project is licensed under the MIT License - see the LICENSE file for details.
$ claude mcp add smoothui \
-- python -m otcore.mcp_server <graph>