Map
โ†‘Reactive Signals

TC39 Proposal Signals

Wiki conceptjavascripttc39signalsstandards โ†ณ show in map Markdown
title
TC39 Proposal Signals
type
concept
summary
Stage 1 proposal to add native Signal primitives to JavaScript
tags
javascript, tc39, signals, standards
created
2026-04-06
updated
2026-04-06

A Stage 1 TC39 proposal to add a native Signal primitive to JavaScript. The goal isn't to replace framework-specific APIs (Solid's createSignal, Vue's ref, Preact's signal) but to provide a shared reactive foundation underneath them. Frameworks would keep their surface APIs but share the subscription, invalidation, and dependency-tracking machinery.

If adopted, this would mean signals from different frameworks could interoperate โ€” a Solid signal could feed into a Vue computed, because both would be built on the same native primitive.

The proposal covers the core push-pull algorithm: eager invalidation on write, lazy re-evaluation on read, automatic dependency tracking via an execution context stack. See signal-push-pull-algorithm for how this algorithm works in practice.

Stage 1 means the committee thinks the problem is worth solving, but the API shape is still open. No browser has shipped an implementation yet.