Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

nerdalytics/beacon

Repository files navigation

Reactive dependency graph runtime for Node.js backends. Tracks dependencies between signals and propagates updates automatically.

pm:yarn pm:pnpm pm:jsr pm:vlt registry:npm:version Socket Badge

tech:nodejs language:typescript linter:biome license:mit

Tracks which properties each effect reads and re-runs only when those properties change. Zero dependencies, TypeScript-first.

Installation

npm install @nerdalytics/beacon --save-exact
# or
yarn add @nerdalytics/beacon
# or
pnpm add @nerdalytics/beacon
# or
bun add @nerdalytics/beacon
# or
deno install npm:@nerdalytics/beacon
# or
npx jsr add @nerdalytics/beacon
# or
vlt install @nerdalytics/beacon

Quick Start

import { state, derive, effect } from '@nerdalytics/beacon';
const signal = state({ count: 0 });
const doubled = derive(() => signal.count * 2);
const dispose = effect(() => {
 console.log(`Count: ${signal.count}, Doubled: ${doubled.value}`);
});
// => "Count: 0, Doubled: 0"
signal.count = 5;
// => "Count: 5, Doubled: 10"
dispose();
doubled.reactive = false;

Documentation

Full documentation, API reference, and examples available at: nerdalytics.github.io/beacon

LLM-friendly docs

The handbook has plain-text endpoints for LLMs:

You can also append .md to any handbook page URL for its Markdown source (e.g. <version>/introduction.md).

License

MIT - See LICENSE for details.

About

Reactive dependency graph runtime for Node.js. Track dependencies between states, computations, and effects automatically. Zero dependencies. TypeScript-first.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /