|
1 | | -# registry-template |
| 1 | +# Frappe UI React Registry |
2 | 2 |
|
3 | | -You can use the `shadcn` CLI to run your own component registry. Running your own |
4 | | -component registry allows you to distribute your custom components, hooks, pages, and |
5 | | -other files to any React project. |
| 3 | +A design-driven React component collection built with Espresso UI principles and Shadcn compatibility. Offers a distributed library of accessible, beautifully-crafted UI elements. |
| 4 | + |
| 5 | +## Features |
| 6 | + |
| 7 | +- Built on Next.js and TypeScript |
| 8 | +- Fully compatible with Shadcn CLI |
| 9 | +- Dark/light theme support |
| 10 | +- Comprehensive design tokens system |
| 11 | +- Component distribution via registry.json |
| 12 | +- Built-in documentation and kitchen sink demo |
6 | 13 |
|
7 | 14 | ## Getting Started |
8 | 15 |
|
9 | 16 | This is a template for creating a custom registry using Next.js. |
10 | 17 |
|
11 | | -- The template uses a `registry.json` file to define components and their files. |
12 | | -- The `shadcn build` command is used to build the registry. |
13 | | -- The registry items are served as static files under `public/r/[name].json`. |
14 | | -- The template also includes a route handler for serving registry items. |
15 | | -- Every registry item are compatible with the `shadcn` CLI. |
16 | | -- We have also added v0 integration using the `Open in v0` api. |
| 18 | +```bash |
| 19 | +pnpm install |
| 20 | +pnpm dev |
| 21 | +``` |
| 22 | + |
| 23 | +## Project Structure |
| 24 | + |
| 25 | +```bash |
| 26 | +. |
| 27 | +├── app |
| 28 | +│  ├── docs # Documentation |
| 29 | +│  ├── favicon.ico |
| 30 | +│  ├── gameplan # /gameplan block demo |
| 31 | +│  ├── kitchen-sink # /kitchen-sink block demo |
| 32 | +│  ├── lms # /lms block demo |
| 33 | +│  ├── page.tsx |
| 34 | +├── components |
| 35 | +│  └── ui # Component library |
| 36 | +│  ├── avatar-group.tsx |
| 37 | +│  ├── avatar.tsx |
| 38 | +│  ├── badge.tsx |
| 39 | +│  ├── button-group.tsx |
| 40 | +│  ├── button.tsx |
| 41 | +│  ├── dropdown-menu.tsx |
| 42 | +│  ├── icon.tsx |
| 43 | +│  └── input.tsx |
| 44 | +├── icons # Icon components |
| 45 | +├── components/ # React components |
| 46 | +├── lib/ # Utility functions |
| 47 | +├── public/ # Static files |
| 48 | +└── registry.json # Component registry config |
| 49 | +``` |
| 50 | + |
| 51 | +## Build and deploy |
| 52 | + |
| 53 | +Build the registry: |
| 54 | + |
| 55 | +```shell |
| 56 | +pnpm run registry:build |
| 57 | +``` |
| 58 | + |
| 59 | +Then build the registry app: |
| 60 | + |
| 61 | +```shell |
| 62 | +pnpm run build |
| 63 | +``` |
| 64 | + |
| 65 | +## Available demos |
| 66 | + |
| 67 | +- [`/gameplan`](https://frappe-ui-react.tmls.dev/gameplan) - showcases the Frappe Gameplan app block |
| 68 | +- [`/lms`](https://frappe-ui-react.tmls.dev/lms) - showcases the Frappe LMS app block |
| 69 | +- [`/kitchen-sink`](https://frappe-ui-react.tmls.dev/kitchen-sink) - showcases all components |
17 | 70 |
|
18 | 71 | ## Documentation |
19 | 72 |
|
20 | | -Visit the [shadcn documentation](https://ui.shadcn.com/docs/registry) to view the full documentation. |
| 73 | +Visit the [shadcn documentation](https://ui.shadcn.com/docs/registry) to learn more about: |
| 74 | + |
| 75 | +- Registry configuration |
| 76 | +- Component development |
| 77 | +- Distribution setup |
| 78 | +- CLI usage |
| 79 | + |
| 80 | +## License |
| 81 | + |
| 82 | +MIT License - See [LICENSE](LICENSE) for details. |
0 commit comments