Getting started

Signality is a comprehensive library of signal-first utilities for Angular. SSR-ready, type-safe, and designed for seamless reactive composition with DI-interop.

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();
      }
    });
  }
}

Inspiration

Signality was inspired by VueUse — a collection of essential Vue utilities. We follow the same philosophy of composable, reactive utilities for Angular's signal-based reactivity system.

What's next?

  • Learn the Key Concepts — Signal-First Design, MaybeSignal, WithInjector, and more
  • Explore Browser Utilities — Battery, Fullscreen, Clipboard, and more
  • Check out Reactivity — Debounced, Throttled signals
Edit this page on GitHub Last updated: Mar 19, 2026, 23:28:23