Contributing Guidelines
·
Submit an Issue
A collection of atomic utilities for building reactive compositions in Angular.
Key Features:
- Signal-first design — built on top of Angular Signals, abstracting away from RxJS
- Automatic cleanup — utilities manage resource lifecycles automatically
- SSR-compatible — browser APIs are guarded with safe defaults on the server
- Reactive inputs — seamlessly handles static and reactive values
- Tree-Shakable — only the code you use ends up in your bundle
Signality v0.1.0 is here! 🎉
Help us test it in your projects — minor versions may include API refinements as we fine-tune the library based on real-world feedback.
Signality requires the following minimum versions:
| Tool | Minimum Version |
|---|---|
| Angular | v20.0.0 |
@signality/core is the main package containing browser utilities, element utilities, and general-purpose reactive helpers:
pnpm add @signality/coreOr with npm/yarn:
npm install @signality/core
# or
yarn add @signality/coreSignality also provides specialized integration packages:
Signal-based utilities for Angular CDK:
pnpm add @signality/cdk-interopNote: @signality/cdk-interop requires both @signality/core and @angular/cdk as peer dependencies.
Read the full documentation here: https://signality.dev
import { Component, effect } from '@angular/core';
import { storage, speechSynthesis, favicon } from '@signality/core';
@Component({
template: `
<input [(ngModel)]="value" />
<button (click)="synthesis.speak(value())">Speak</button>
`,
})
export class Demo {
readonly value = storage('key', ''); // Web Storage API
readonly synthesis = speechSynthesis(); // Web Speech API
readonly fav = favicon(); // Dynamic Favicon
constructor() {
effect(() => {
if (this.synthesis.isSpeaking()) {
this.fav.setEmoji('🔊');
} else {
this.fav.reset();
}
});
}
}| Package | Description |
|---|---|
@signality/core |
Core utilities: browser APIs, element utilities, reactive helpers, router and forms integration |
@signality/cdk-interop |
CDK integration: focus monitoring, interactivity checking, and input modality detection |
For changelog, refer to the automatically generated changelog.
This section is for contributors and developers who want to work on Signality.
The following tools are required for local development:
| Tool | Minimum Version | Notes |
|---|---|---|
| Node.js | v20.19.0 |
Aligns with active LTS versions used in CI |
| npm | Not supported | ❌ Please use pnpm instead (see below) |
| pnpm | v9.12.0 |
✅ Preferred package manager |
Please follow our contributing guidelines.
Licensed under the MIT License, Copyright © 2025-present.