Introduction
Production-ready components for shadcn/ui. Install them with the CLI and own every line of source.
Emstein UIis a collection of components built for the shadcn/ui ecosystem. It isn't a package you install from npm and import. It's a registry: the shadcn CLI copies each component's source into your project, next to the shadcn/ui components you already use.
How it works
Every component is published as a registry item, and the @emstein-ui namespace is listed in the official shadcn registry directory. When you add a component, the CLI installs its npm dependencies, adds any shadcn/ui components it relies on, and writes the source file into your project.
Components are styled with the same CSS variables as shadcn/ui, such as --border, --muted, and --primary, so they pick up your theme, dark mode included, with no extra setup.
Principles
Own the code
Source lands in your repository. Read it, change it, and ship it like the rest of your components.
Practical defaults
Sensible behavior out of the box, so the common case takes a few lines of configuration.
Focused APIs
Small, typed props instead of sprawling options, with the underlying primitives still available.
Your theme
Styled with shadcn/ui tokens, so components match your design system in light and dark mode.
Quick start
In a project that already uses shadcn/ui, add the table with one command:
npx shadcn@latest add @emstein-ui/tableStarting from scratch? Follow the installation guide.