Angular Directive Workspace
January 8, 2026 ยท View on GitHub
An Angular monorepo workspace containing multiple standalone directive and utility libraries. Built with Angular 21+ using ng-packagr for npm publishing.
Projects
ng-tailwind-merge
An Angular standalone directive that merges Tailwind CSS classes using tailwind-merge and clsx.
Features:
[twMerge]directive - mergesclassandngClassattributes[merge]directive - dynamic class merging via property bindingcn()andmergeTailwindClasses()utility functions- Signal-based inputs
- Tree-shakeable
See ng-tailwind-merge README for detailed usage.
@sergeydus/ng-signals-utils
Utility functions for working with Angular signals.
Features:
- Signal transformations -
mapSignal,filterSignal,debounceSignal,combineSignals,distinctSignal - Array utilities -
arraySignalPush,arraySignalFilter,arraySignalMap,arraySignalSort, and more - Object utilities -
patchSignal,pickSignal,omitSignal,pluckSignal, and more - Effect helpers -
watchSignal,watchUntil,throttleEffect,debounceEffect - Type-safe with full TypeScript support
- Tree-shakeable
See @sergeydus/ng-signals-utils README for detailed usage.
Other Libraries
my-directive-lib- foundational directive libraryng-tailwind-merge1- additional Tailwind utilities
Setup
Prerequisites
- Node.js 18+
- npm 9+
Installation
npm install
Development
Build All Libraries
npm run build
Build Specific Library
ng build ng-tailwind-merge
ng build ng-signals-utils
Run Tests
npm run test
Development Server
npm start
Publishing to npm
Build the library:
# or
ng build ng-signals-utils
Publish:
cd dist/ng-tailwind-merge
npm publish
# or
cd dist/ng-signals-utils
cd dist/ng-tailwind-merge
npm publish
Each library is configured with ng-packagr for automated bundling and distribution.