Bloc UIBloc UI

Why Bloc UI?

An honest comparison with the main Angular component libraries. Pick what fits your project — we'd rather you use the right tool than the wrong one.

In one sentence

Bloc UI gives you the behaviour and accessibility of a full component library with zero design opinions — you bring your own styles (or drop in @bloc-ui/theme), and nothing fights Tailwind.

At a glance

 Bloc UIAngular MaterialPrimeNGSpartan UI
Design systemBarebone, opt-in themeMaterial Design (opinionated)Multiple themesshadcn-style, Tailwind-first
Tailwind-friendlyYes — zero-specificity base, cascade layersFights Tailwind; needs overridesPartial, theme-dependentYes — built on Tailwind
Standalone + NgModuleBothBothBothStandalone only
Tree-shakeable entry pointsYes — secondary entry points per componentPer-module importsPer-component modulesYes — copy-paste per component
Signal-based inputsYesPartialPartialYes
Bundle footprintSmall — individual packagesLargeLargeSmall — copy-paste
Angular version targetAngular 21+Angular 15+Angular 16+Angular 17+
LicenseMITMITMITMIT

When to pick Bloc UI

  • You're on Angular 21+ and want modern standalone + signal-based components.
  • You use Tailwind (or a custom design system) and don't want component styles fighting your utility classes.
  • You want the behaviour of a component library — a11y, keyboard navigation, forms integration — without inheriting anyone's design opinions.
  • You care about bundle size and prefer individual, tree-shakeable packages.

When to pick something else

  • You want a full Material Design out-of-the-box experience → use Angular Material.
  • You need breadth — 80+ components including advanced data grid → use PrimeNG.
  • You prefer copy-paste shadcn-style components and don't mind owning the source → use Spartan UI.