@awdlab/jig is a component library for Angular 22+ built the way Angular
is heading: signals everywhere, zoneless, standalone. There are no NgModules, no
@Input()/@Output() decorators, and no ControlValueAccessor boilerplate — every
control is a standalone component or directive whose inputs are input()/model()
signals.
A control ships zero component CSS. Its .ts/.html define behavior, accessibility,
and a set of named scopes (root, track, thumb, …). All styling lives in a
separate theme that maps those scopes to CSS. At runtime the theme engine injects the
CSS for each control into <head> the first time that control appears on the page.
That split buys you three things:
::ng-deep, no global CSS.invalid or disabled drive which theme
classes are applied — automatically. See State.nova (fully themed, dark-mode aware), shade (a shadcn-style
theme), and material (Material Design 3) — all from @awdlab/jig-themes.with*() feature you pass to the provider. You only ship what you use.
jig