Book 1 · Lesson 1.13

SolidJS signals

  • Define signals, memos, and effects
  • See fine-grained updates vs full re-render
  • Relate signals to live metric cards in radar

Prerequisites: 1.3 · 1.12

Team Radar ships SolidJS — reactive primitives without a virtual DOM diff on every poll.

Core primitives

const [count, setCount] = createSignal(0);
const doubled = () => count() * 2;
createEffect(() => console.log(doubled()));

Reading count() inside doubled or an effect subscribes that computation — only those nodes update.

SolidSignalGraph — increment and watch the dependency chain light up.

Radar connection

When Redis SSE pushes a new event count, only the bound text node changes — not the whole dashboard shell.

See apps/radar/ — signals for UI, TanStack Query for server JSON (next lesson).

Teach-back prompt

How is a Solid signal different from React useState triggering a component re-render?

Build a reactive counter

Lesson 1.13 check

1. Solid signals update…