xignal

June 26, 2025 ยท View on GitHub

signals state management for real

Packages

Install

npm i xignal

Usage


import { state, computed, effect } from "xignal";

const count = state(1);
const doubled = computed(() => count.get() * 2);

effect(() => {
	console.log(`doubled ${doubled.get()}`); // "doubled 2"
});

count.get(); // 1
doubled.get(); // 2

count.set(2); // "doubled 4"

count.get(); // 2
doubled.get(); // 4

Acknowledgements

proposal-signals

alien-signals

nanostores

standard-schema

License

MIT