mirror of
https://github.com/hanzoai/shadcn.git
synced 2026-10-30 18:22:59 +00:00
Squash merge of shadcn-ui/ui main branch into hanzo/ui, bringing in: - [email protected] through [email protected] releases - New apps/v4 directory structure - Registry system improvements and MCP server - Framework support (Vue, Svelte, React Native) - New templates (vite-app, monorepo-next, laravel) - Zod 4 compatibility (scoped override for zod@>4) - Test fixture corrections for alias resolution All 867 merge conflicts resolved preserving Hanzo customizations. 1020/1020 shadcn tests pass.
1.6 KiB
1.6 KiB
Examples
This directory contains demo components for the component documentation.
Directory Structure
examples
├── base
│ ├── ui # Auto-generated by build-registry.mts
│ ├── lib # Auto-generated by build-registry.mts
│ ├── hooks # Auto-generated by build-registry.mts
│ ├── button-demo.tsx
│ └── ...
├── radix
│ ├── ui # Auto-generated by build-registry.mts
│ ├── lib # Auto-generated by build-registry.mts
│ ├── hooks # Auto-generated by build-registry.mts
│ └── ...
└── __index__.tsx # Auto-generated by build-registry.mts
Adding a New Example
- Create a new
.tsxfile inexamples/baseorexamples/radix:
// examples/base/button-loading.tsx
import { Button } from "@/examples/base/ui/button"
export function ButtonLoading() {
return <Button disabled>Loading...</Button>
}
- Run the examples build to regenerate the index:
pnpm examples:build
- Use the example in documentation by referencing its name (filename without
.tsx):
<ComponentPreview name="button-loading" />
Notes
- The
ui,lib, andhooksdirectories are auto-generated duringpnpm registry:build. Do not edit files in these directories directly. - Example files should be placed directly in
examples/baseorexamples/radix, not in subdirectories. - Both named exports and default exports are supported.
- After adding or removing examples, run
pnpm examples:buildto update the index.