A growing collection of 260+ beautifully crafted, copy-pasteable React UI components built with Tailwind CSS, Radix UI, and Framer Motion.
Website · Components · Installation · Contributing · Issues
Watermelon UI is an open-source component registry that provides production-ready, copy-pasteable React components. Instead of installing a monolithic component library, you pick exactly the components you need — each one is self-contained with its own dependencies.
- 260+ Components — Buttons, inputs, cards, accordions, modals, charts, dashboards, and much more
- Copy-Paste Architecture — Components are added directly to your project, giving you full ownership and control
- shadcn/ui Compatible — Works seamlessly with the
shadcnCLI and registry protocol - Modern Stack — Built with React 19, Tailwind CSS v4, Radix UI, and Framer Motion
- TypeScript First — Every component is fully typed out of the box
- Customizable — Components live in your codebase — modify them however you want
Browse all components at ui.watermelon.sh.
Components are organized into categories:
| Category | Examples |
|---|---|
| Inputs | Button, Input, Checkbox, Select, Switch, Slider, AI Input |
| Data Display | Card, Avatar, Badge, Alert, Accordion, Table |
| Feedback | Dialog, Alert Dialog, Toast (Sonner), Progress |
| Navigation | Breadcrumb, Tabs, Sidebar, Carousel |
| Layout | Separator, Collapsible, Split Panels |
| Charts | Area, Bar, Line, Pie, Radar (via Recharts) |
| Blocks | Full page sections, dashboards, login forms |
Add any component to your project using the shadcn CLI:
npx shadcn@latest add "https://registry.watermelon.sh/<component-name>.json"Examples:
# Add a button component
npx shadcn@latest add "https://registry.watermelon.sh/button.json"
# Add an animated accordion
npx shadcn@latest add "https://registry.watermelon.sh/animated-accordion.json"
# Add a chart component
npx shadcn@latest add "https://registry.watermelon.sh/chart.json"You can also copy component files directly from src/components/ui/ into your project's component directory.
- React 18+ (React 19 recommended)
- Tailwind CSS v4
- A path alias
@/pointing to yoursrc/directory (standard in Next.js, Vite, etc.)
import { Button } from "@/components/ui/button";
export default function App() {
return (
<div className="p-8">
<Button variant="default">Click me</Button>
</div>
);
}- Bun (preferred) or Node.js 20+
# Clone the repository
git clone https://github.com/WatermelonCorp/watermellon-registry.git
cd watermellon-registry
# Install dependencies
bun install
# or
npm install
# Start the dev server
bun dev
# or
npm run dev| Script | Description |
|---|---|
bun dev |
Start Vite development server |
bun run build |
Type-check and build for production |
bun run lint |
Run ESLint |
bun run preview |
Preview production build locally |
bun run registry:build |
Build the shadcn registry |
bun run deploy |
Deploy to Cloudflare Workers (Vercel) |
watermellon-registry/
├── public/r/ # Built registry JSON files (one per component)
├── src/
│ ├── components/
│ │ ├── ui/ # 260+ UI component source files
│ │ ├── blocks/ # Full page block components
│ │ ├── dashboards/ # Dashboard components
│ │ └── pages/ # Full page components
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utility functions (cn, etc.)
│ └── static-assets/ # Static assets
├── scripts/
│ ├── sync-registry.js # Syncs components → registry.json
│ └── sync-dashboards.js # Syncs dashboard components
├── registry.json # Master registry configuration
├── components.json # shadcn configuration
└── wrangler.jsonc # Cloudflare Workers config
We love contributions! Whether it's fixing a bug, adding a new component, improving documentation, or suggesting features — every contribution helps make Watermelon UI better.
Please read our Contributing Guide to get started.
- Fork the repository
- Create a feature branch:
git checkout -b feat/my-component - Add your component in
src/components/ui/ - Run
node scripts/sync-registry.jsto update the registry - Commit and push:
git push origin feat/my-component - Open a Pull Request
See CONTRIBUTING.md for the full guide.
- GitHub Discussions — Ask questions and share ideas
- GitHub Issues — Report bugs or request features
- Code of Conduct — Our community standards
- Security Policy — How to report vulnerabilities
- AI Policy — Guidelines on AI-generated contributions
- License — MIT License
Watermelon UI is built on the shoulders of amazing open-source projects:
- shadcn/ui — Registry protocol and CLI
- Radix UI — Accessible component primitives
- Tailwind CSS — Utility-first CSS framework
- Framer Motion — Animation library
- Recharts — Chart library
- Vite — Build tool
This project is licensed under the MIT License.
Made with 🍉 by the Watermelon community