open-index/open-npm huggingface dataset:
npm package: @signalco/ui-notifications
Description: Use `NotificationsContainer` at the application root to provide notifications injection location.
Latest version: 0.2.0

# @signalco/ui-notifications

## Getting started

Use `NotificationsContainer` at the application root to provide notifications injection location.

```tsx
'use client';

import { PropsWithChildren } from 'react';
import { NotificationsContainer } from '@signalco/ui-notifications';

export function ClientProviders({ children }: PropsWithChildren<{}>) {
    return (
        <>
            {/*  ...other provider components */}
            <NotificationsContainer />
            {children}
        </>
    )
}
```

Then you can use `showNotification` hook to show notifications.

```tsx
import { showNotification } from '@signalco/ui-notifications';

export function MyComponent() {
    const handleAction = () => {
        showNotification('Something went wrong.', 'error');
    };

    return (
        <button onClick={handleAction}>Show notification</button>
    );
}
```

## Available functions

- `showNotification`
- `showPrompt`
- `hideNotification`
npm package: @signald/bot
Description: ## Installation
Latest version: 0.0.2

# @signald/bot

## Installation

```
`npm install @signald/bot @signald/protocol`
```

## Usage

1. Setup signald and register an account (https://signald.org/articles/getting-started/)
2. Initialize the bot with the registered phone number and any message handlers you want use

```
import { MessageHandler, SignaldBot } from "@signald/bot";
import { getReplyRecipient, react } from "@signald/protocol";

export const handleThumbsUp: MessageHandler = async (client, message) => {
  const recipient = getReplyRecipient(message);

  react(client, {
    username: message.account!,
    ...recipient,
    reaction: {
      emoji: "👍🏻",
      remove: false,
      targetAuthor: message.source,
      targetSentTimestamp: message.timestamp,
    },
  });
};

new SignaldBot("+00000000000", [handleThumbsUp]);
```
npm package: @signald/client
Description: ## Installation
Latest version: 0.0.2

# @signald/client

## Installation

```
`npm install @signald/client @signald/protocol`
```

## Usage

```
import { Signald } from "@signald/client";
import { list_accounts } from "@signald/protocol";

const client = new Signald("/signald/signald.sock" as any, () => onReady());

async function onReady() {
  const accounts = await list_accounts(client, {});

  console.log(accounts);
}
```
npm package: @signald/protocol
Description: Types and actions to communicate with a [signald](https://signald.org) instance.
Latest version: 0.0.1

# @signald/protocol

Types and actions to communicate with a [signald](https://signald.org) instance.

This library is generated from the [signald protocol document](https://signald.org/protocol.json)

## Installation

`npm install @signald/protocol`

## Usage

You'll most probably want to use `@signald/client` or `@signald/bot` to communicate with signald.

This package currently exports the v1 types of the signald protocol.

```
import { list_accounts } from "@signald/protocol"

const client = // client from @signald/client or @signald/bot

const accounts = await list_accounts(client, {})
```
npm package: @signaldb/angular
Description: This is the [Angular](https://angular.dev/guide/signals) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple f
Author: Max Nowack
Latest version: 1.0.6

# @signaldb/angular

This is the [Angular](https://angular.dev/guide/signals) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple frameworks.

See https://signaldb.js.org/reference/angular/ for more information.
npm package: @signaldb/maverickjs
Description: This is the [Maverick.js signals](https://github.com/maverick-js/signals) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity 
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/mobx
Description: This is the [MobX](https://mobx.js.org/README.html) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple framew
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/oby
Description: This is the [oby](https://github.com/vobyjs/oby) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple framework
Author: Max Nowack
Latest version: 1.0.1

# @signaldb/oby

This is the [oby](https://github.com/vobyjs/oby) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple frameworks.

See https://signaldb.js.org/reference/oby/ for more information.
npm package: @signaldb/preact
Description: This is the [Preact](https://preactjs.com/guide/v10/signals/) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multi
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/sinuous
Description: This is the [sinuous](https://github.com/luwes/sinuous) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple fr
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/sjs
Description: This is the [S.js](https://github.com/adamhaile/S) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across multiple framewo
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/solid
Description: This is the [Solid.js](https://docs.solidjs.com/concepts/signals) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across m
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/usignal
Description: This is the [µsignal](https://github.com/WebReflection/usignal) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactivity across mul
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldb/vue
Description: This is the [Vue.js](https://vuejs.org/guide/extras/reactivity-in-depth.html) plugin for [SignalDB](https://github.com/maxnowack/signaldb). SignalDB is a local-first JavaScript database with real-time sync, enabling optimistic UI with signal-based reactiv
Author: Max Nowack
Latest version: 1.0.0
npm package: @signaldex/sdk
Description: Signaldex API client — prompt evaluation, leaderboard, confidence allocation
Latest version: 0.1.1

# @signaldex/sdk

Signaldex API client for Node and browser. Create prompts, run evaluations, fetch leaderboard, allocate confidence points.

## Install

```bash
npm install @signaldex/sdk
```

## Usage

```ts
import { createClient } from "@signaldex/sdk";

const client = createClient({
  baseUrl: "https://your-signaldex.com", // or http://localhost:3000
  apiKey: "your-internal-api-key",         // required for evaluate()
});

// Create a prompt (evaluations run on Signaldex)
const created = await client.createPrompt({
  name: "My Prompt",
  content: "You are a helpful assistant. Answer concisely.",
  category: "general",
});
if (!created.success) throw new Error(created.error);
const promptId = created.data.id;

// Run evaluation (uses apiKey)
const result = await client.evaluate({ promptId, category: "general" });
if (result.success) console.log(result.data.metrics);

// Leaderboard
const board = await client.getLeaderboard();
if (board.success) console.log(board.data);

// Allocate confidence points
const alloc = await client.allocate({
  userId: "user-uuid",
  promptId: "prompt-uuid",
  points: 100,
});
if (alloc.success) console.log(alloc.data.totalConfidence);
```

## API

- `createClient({ baseUrl?, apiKey? })` — returns client
- `client.createPrompt(params)` — POST /api/prompts
- `client.evaluate({ promptId, category? })` — POST /api/evaluate (requires apiKey)
- `client.getLeaderboard()` — GET /api/leaderboard
- `client.allocate({ userId, promptId, points })` — POST /api/allocate

All methods return `Promise<ApiResponse<T>>`: `{ success: true, data }` or `{ success: false, error }`.
npm package: @signalgrid/signalgrid-push
Description: Official Node.js client for Signalgrid push notifications
Author: Signalgrid
Latest version: 1.0.2

# Signalgrid Node.js SDK
[![npm version](https://img.shields.io/npm/v/@signalgrid/signalgrid-push.svg?style=flat-square)](https://www.npmjs.com/package/@signalgrid/signalgrid-push)
[![npm downloads](https://img.shields.io/npm/dm/@signalgrid/signalgrid-push.svg?style=flat-square)](https://www.npmjs.com/package/@signalgrid/signalgrid-push)

Official Node.js client for the `@signalgrid/signalgrid-push` package.

## Install

```bash
npm install @signalgrid/signalgrid-push
```

## Usage

```js
import Signalgrid from '@signalgrid/signalgrid-push';

const sg = new Signalgrid('your_client_key');

const result = await sg.send({
  channel: 'your_channel_token',
  title: 'Server Alert',
  body: 'High CPU usage detected on web-01',
  type: 'warning',
  critical: false
});

console.log(result);
```

## API

### `new Signalgrid(clientKey)`

Creates a Signalgrid client instance.

#### Arguments

- `clientKey` (`string`) - Your Signalgrid client key.

### `sg.send(payload)`

Sends a notification.

#### Payload

- `channel` (`string`) - Your channel token.
- `title` (`string`) - Notification title.
- `body` (`string`) - Notification body.
- `type` (`string`, optional) - Notification type such as `info`, `success`, `warning`, or `error`.
- `critical` (`boolean`, optional) - Critical flag. If set to true, notification will bypass DND / Focus modes.

#### Returns

Returns a promise that resolves with the Signalgrid API response.

## Example with error handling

```js
import Signalgrid from '@signalgrid/signalgrid-push';

async function main() {
  try {
    const sg = new Signalgrid('your_client_key');

    const result = await sg.send({
      channel: 'your_channel_token',
      title: 'Server Alert',
      body: 'High CPU usage detected on web-01',
      type: 'warning',
      critical: false
    });

    console.log(result);
  } catch (error) {
    console.error('Failed to send notification:', error);
  }
}

main();
```
npm package: @signality/cdk-interop
Description: Signal-based utilities for Angular CDK
Author: Vyacheslav Borodin
Latest version: 0.1.3

# @signality/cdk-interop

Signal-based utilities for Angular CDK. Reactive wrappers around CDK's accessibility features.

## Installation

```bash
npm install @signality/cdk-interop @angular/cdk
```

## Features

- **`focusMonitor()`** — Reactive focus tracking with origin detection (keyboard, mouse, touch, program)
- **`inputModality()`** — Reactive input method detection (keyboard, mouse, touch)
- **`liveAnnouncer()`** — Reactive screen reader announcements with message tracking

## Usage

```typescript
import { focusMonitor, inputModality, liveAnnouncer } from '@signality/cdk-interop';

// Focus monitoring with origin
const btn = viewChild<ElementRef<HTMLButtonElement>>('btn');
const focus = focusMonitor(btn);
// In template: Focused: {{ focus.isFocused() }}, Origin: {{ focus.origin() }}

// Input modality detection
const modality = inputModality();
// In template: Current input: {{ modality() ?? 'none' }}

// Screen reader announcements
const announcer = liveAnnouncer();
announcer.announce('Item added to cart');
// In template: Last: {{ announcer.lastMessage() }}
```

## Documentation

Full documentation available at [signality.dev/cdk-interop](https://signality.dev/cdk-interop/focus-monitor)
npm package: @signality/core
Description: A foundational toolkit for Angular Signals
Author: Vyacheslav Borodin
Latest version: 0.1.3

# @signality/core

A collection of atomic utilities for building reactive compositions in [Angular](https://angular.dev).

## Key Benefits

- **Signal-first design** — built on top of Angular [Signals](https://angular.dev/guide/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

## Quick Example

```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', ''); // 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();
      }
    });
  }
}
```

## Framework Compatibility

| Tool        | Minimum Version |
|-------------|-----------------|
| **Angular** | `v20.0.0`       |

## Installation

```bash
pnpm add @signality/core
```

Or with npm/yarn:

```bash
npm install @signality/core
# or
yarn add @signality/core
```

## Documentation

Full documentation available at [signality.dev](https://signality.dev)