mirror of
https://github.com/hanzoai/shadcn.git
synced 2026-10-30 18:22:59 +00:00
Upstream sync from shadcn-ui/ui (1686 commits since last merge base). Key changes: - packages/shadcn upgraded to 4.1.0 (CLI font transformers, scaffold from github, chart colors) - apps/v4 replaces apps/www as the primary docs/registry app - Font system: 25+ heading font registries, font markers utility, @supports override - Chart improvements: recharts v3 compat, radial chart fixes - templates/ updated with monorepo variants (astro, vite, react-router, start) - skills/shadcn AI skill definitions added - deprecated/ removed (auth, auth-firebase, cli, www) Preserved Hanzo-only paths: app/, pkg/, demo/, docs/, template/next/
58 lines
1.2 KiB
Plaintext
58 lines
1.2 KiB
Plaintext
---
|
|
title: React Router
|
|
description: Install and configure shadcn/ui for React Router.
|
|
---
|
|
|
|
<Callout className="mb-6 border-emerald-600 bg-emerald-100 dark:border-emerald-400 dark:bg-emerald-900">
|
|
|
|
**Starting a new project?** Use [shadcn/create](/create) for a fully configured React Router app with custom themes, Base UI or Radix, and icon libraries.
|
|
|
|
</Callout>
|
|
|
|
<Steps>
|
|
|
|
### Create project
|
|
|
|
```bash
|
|
npx shadcn@latest init -t react-router
|
|
```
|
|
|
|
**For a monorepo project, use `--monorepo` flag:**
|
|
|
|
```bash
|
|
npx shadcn@latest init -t react-router --monorepo
|
|
```
|
|
|
|
### Add Components
|
|
|
|
You can now start adding components to your project.
|
|
|
|
```bash
|
|
npx shadcn@latest add button
|
|
```
|
|
|
|
The command above will add the `Button` component to your project. You can then import it like this:
|
|
|
|
```tsx showLineNumbers title="app/routes/home.tsx"
|
|
import { Button } from "@/components/ui/button"
|
|
|
|
import type { Route } from "./+types/home"
|
|
|
|
export function meta({}: Route.MetaArgs) {
|
|
return [
|
|
{ title: "New React Router App" },
|
|
{ name: "description", content: "Welcome to React Router!" },
|
|
]
|
|
}
|
|
|
|
export default function Home() {
|
|
return (
|
|
<div className="flex min-h-svh flex-col items-center justify-center">
|
|
<Button>Click me</Button>
|
|
</div>
|
|
)
|
|
}
|
|
```
|
|
|
|
</Steps>
|