Getting started

Signality v0.5 is here! 🎉
The last minor before 1.0 — the API is close to frozen.

We welcome contributions of all kinds - whether it's fixing bugs, adding features, improving documentation, or suggesting ideas.

All contributors will be featured!

Signality is a library of signal-first utilities for Angular: 76 SSR-ready, type-safe composables for browser APIs, DOM elements, and reactive state. Think VueUse, for Angular Signals.

Prerequisites

Before installing Signality, make sure you have:

  • Angular 20+
  • TypeScript 5.4+

Installation

Choose your preferred package manager:

bash
npm install @signality/core
bash
pnpm add @signality/core
bash
yarn add @signality/core

Quick start

Once installed, you can import and use any utility from the library:

angular-ts
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', 'Hi, Angular!'); // 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();
      }
    });
  }
}

What's next?

Edit this page on GitHub Last updated: Aug 23, 2026, 20:51:28