Now with Angular 21 support

Radix + shadcn,rebuilt for Angular

A modern Angular UI kit that combines Radix primitives with the shadcn approach — accessible, composable, and ready to ship.

ng add @ng-cn/core@latest

Everything you need to build

Radix-powered primitives with shadcn-style building blocks — designed for Angular.

60+ Components

Buttons, dialogs, forms, navigation, and more — built on Radix primitives and styled the shadcn way.

TypeScript First

Strict types throughout with great DX: autocomplete, docs, and safe APIs.

Signal-Powered

Built with Angular signals for fine-grained reactivity and performance.

Fully Themeable

CSS variables for complete customization. Dark mode built-in. Your brand, your way.

Accessible

WAI-ARIA patterns, keyboard-first, screen-reader friendly — Radix-driven by design.

SSR Ready

Full server-side rendering support. Works seamlessly with Angular Universal.

Built for performance

Every component is optimized for speed. OnPush change detection, tree-shakable imports, and minimal bundle size by default.

100%
Tree-shakable
Import only what you use
<10kb
Average component
Gzipped and minified
0
Runtime dependencies
Pure Angular & Tailwind
button.component.ts
import { Button } from '@/ui/button';

@Component({
  selector: 'app-hero',
  imports: [Button],
  template: `
    <Button>Click me</Button>
  `,
})
export class HeroComponent { }

Open source.
Built by the community.

A community project bringing Radix + shadcn-style components to Angular. Contribute, customize, and ship.