Contributing Guidelines
·
Submit an Issue
A collection of atomic utilities for building reactive compositions in Angular.
Signality v0.5 is here! 🎉
This is the last minor before1.0. The API is close to frozen, so now is the best time to try it in your projects and tell us what feels wrong.
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 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.