Introduction to Blocks
Blocks is an open-source library of accessible and customizable UI blocks that you can copy and paste into your apps. Built with React, Tailwind CSS, and shadcn/ui, Blocks provides production-ready components that are free to use and fully customizable.What is Blocks?
Blocks is a collection of pre-built UI components designed to accelerate your development workflow. Instead of building common UI patterns from scratch, you can add fully-functional blocks to your project with a single command. Each block is:- Production-ready - Built with best practices and real-world usage in mind
- Accessible - Following WCAG guidelines with proper ARIA attributes
- Customizable - Full source code that you can modify to match your design
- Framework-agnostic - Works with Next.js, Remix, Vite, or any React framework
Key Features
60+ UI Blocks
Choose from login forms, dialogs, sidebars, tables, file uploads, command menus, stats dashboards, and more.
shadcn/ui Integration
Built on top of shadcn/ui components, leveraging Radix UI primitives for accessibility and functionality.
Accessible by Default
All blocks follow accessibility best practices with proper semantic HTML, keyboard navigation, and screen reader support.
Copy and Paste
No package dependencies. Add blocks directly to your project using the shadcn CLI, giving you full control over the code.
Available Block Categories
Blocks includes components across 11 categories:- AI Components (5 blocks) - Chat interfaces with voice input, model selection, and file attachments
- Command Menu (3 blocks) - Keyboard-driven command palettes with search and navigation
- Dialogs (12 blocks) - Modals for confirmations, forms, multi-step wizards, and more
- File Upload (6 blocks) - Drag-and-drop uploaders with preview, progress, and multi-file support
- Form Layout (5 blocks) - Complete form patterns with validation and various field layouts
- Grid List (3 blocks) - Display collections of items in grid or list format
- Login & Signup (9 blocks) - Authentication forms with social login, SSO, and magic links
- Onboarding (1 block) - Multi-step onboarding flows
- Sidebar (6 blocks) - Navigation sidebars with collapsible sections and multiple layouts
- Stats (15 blocks) - Dashboard statistics with charts, progress bars, and trending indicators
- Tables (5 blocks) - Data tables with sorting, filtering, actions, and accordion rows
Example Block
Here’s what a login block looks like:All blocks use shadcn/ui components like Button, Input, Label, and Separator. You’ll need to install these base components before using blocks.
Next Steps
Installation
Set up your project to use Blocks with the shadcn CLI
Usage
Learn how to add and customize blocks in your project