01 — In development
Studio Framer
A signals-based reactive runtime for fine-grained frontend updates.
A reactive frontend framework built on signals, with fine-grained updates instead of a virtual DOM.
- Role
- Creator & maintainer
- Year
- 2025 — present
- Status
- In development
Problem
Bolting a virtual DOM onto a framework built from primitives would have obscured how updates happen. I wanted reactivity to be explicit, traceable and cheap.
Approach
Studio Framer is built on signals: state is a value with subscribers, derived values recompute lazily, and effects run only when their inputs change. Its small runtime keeps updates targeted and predictable.
Key features
- 01Fine-grained signals with derived state and effects
- 02Reactive runtime for frontend applications
- 03No virtual DOM — updates target the nodes that actually changed
- 04Small, dependency-free core
Architecture & decisions
Signals, not diffing
A signal tracks its dependents and notifies only those. There is no tree walk on update, so cost scales with what changed rather than with page size.
Lazy derivation
Computed values are pulled on read and cached until a dependency invalidates them, which keeps chained derivations from recomputing eagerly.
A compiler-friendly runtime
The public API is deliberately small, keeping integrations direct instead of relying on a generic runtime bridge.
Outcome
Studio Framer gave me a working mental model of reactivity at the level of subscriptions and scheduling — the same reasoning I now apply when debugging state problems in React and other frameworks. It remains in active development.