A signal-first, zoneless-ready Angular component library built on Bootstrap 5.3 — from form primitives to a full dock manager, scheduler, and ribbon.
input() / model() / output() / computed() — no RxJS Subjects on public surfaces.provideZonelessChangeDetection(). Every component uses ChangeDetectionStrategy.OnPush.NgModules on public exports — bare classes you can drop straight into your imports: [...].BsThemeService. See the Theming guide.@mintplayer/ng-bootstrap/theming — each component is its own secondary entry point.DOCUMENT / DestroyRef injection behind isPlatformBrowser; a pre-paint script pattern is documented. Install the package — npm 7+ pulls in bootstrap, bootstrap-icons, @angular/cdk, lit, and the other peer dependencies automatically:
Then wire the library's compiled Bootstrap bundle into the styles array of your application's angular.json:
Alternatively, @forward it from your styles.scss when you want to override Bootstrap's SCSS variables ($primary, $body-bg, …) before the import:
Beyond the Bootstrap-shaped basics, the library ships a handful of components that would otherwise be heavy third-party dependencies in their own right.
Day / week / month calendar with drag-drop event editing, ARIA-keyboard navigation, and signal-driven data binding. Built on Lit 3 internally.
See the demo →VS Code-style splittable, draggable panel manager with same-layer splitter intersection glyphs.
See the demo →Microsoft-style command surface — nine item kinds, quick-access toolbar, touch mode.
See the demo →Windowless push-and-reflow tiling layout. Alternative to dock for dashboard shells.
See the demo →CDK virtual-scroll-backed table with pagination, selection, and resizable columns; one signal-driven data contract.
See the demo →Live light / dark / auto plus custom variants like sepia, all via a single signal-based service. SSR-safe.
See the demo →A minimal standalone component using the alert, button-type, and theming packages together: