preactjs/signals
Manage state with style in every framework observed · 2026-08-28
Health v2 · maintenance only
94/100
- Activity 98
- Release rhythm 86
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 0
- age_days: 1486
- days_rel: 19
- days_push: 16
- n_releases_24m: 100
Adoption not part of the score
4475 stars · 129 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
Signals is a performant, reactive state management library from the Preact team, providing signal, computed, effect, and batch primitives with automatic dependency tracking. It ships framework integrations for Preact and React so components re-render automatically when signal values change, with minimal bundle overhead.
Use cases
- manage shared app state without selectors or wrapper functions
- replace useState or Redux with fine-grained reactive state in React
- derive computed values that update automatically when dependencies change
- optimize rendering performance in large Preact or React apps
- use reactive state outside of components, such as in business logic modules
- add SSR-compatible state management to a React app
When to choose
- you use Preact or React and want lightweight, fast state management
- you need reactive state usable inside and outside components
- bundle size and update performance are priorities
- you want gradual adoption alongside hooks or class components
When to avoid
- you use Vue, Svelte, or Angular with their own built-in reactivity
- you need a full state management solution with devtools, middleware, and time-travel debugging
- your team standardizes on a single store pattern like Redux or Zustand
Facets
library · maturity active
state-management frontend-framework frontend web-development browser cross-platform signals reactivity preact react typescript fine-grained-reactivity nodejs
9 sources
- readme: https://github.com/preactjs/signals · fetched 2026-08-28 · 802550bbfa88
- homepage: https://preactjs.com/blog/introducing-signals/ · fetched 2026-08-29 · 1ebb21e5d858
- site_page: https://preactjs.com/about/project-goals · fetched 2026-08-29 · 41c2e63f3f20
- site_page: https://preactjs.com/guide/v10/getting-started · fetched 2026-08-29 · 1baad012dd68
- site_page: https://preactjs.com/about/we-are-using · fetched 2026-08-29 · e8598d9fe64a
- site_page: https://preactjs.com/about/libraries-addons · fetched 2026-08-29 · d273d297244e
- site_page: https://preactjs.com/about/demos-examples · fetched 2026-08-29 · 2d1aa7e40993
- site_page: https://preactjs.com/about/browser-support · fetched 2026-08-29 · 2e2a90dfd4a8
- site_page: https://preactjs.com/guide/v11/signals · fetched 2026-08-29 · db5d02aa0bb3
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| preactjs/signals | main | 94 |
For agents
markdown · JSON · MCP: product_card(name="preactjs/signals")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem