solid-js

solid-js is the reactive core. It has no knowledge of the DOM; the same primitives run in the browser, on the server, and in tests. Rendering functions live in @solidjs/web.

Every export here is imported from "solid-js":

import { createSignal, createMemo, createStore, Show, For } from "solid-js";

Reactivity

Values that change over time and the computations that follow them. Reactivity explains the model.

  • createSignal creates a readable, writable value.
  • createMemo derives a cached value from other reactive reads, including async ones.
  • createEffect runs side effects after tracked values change.
  • createOptimistic creates a signal whose writes inside an action are tentative.
  • isPending reports that a new answer is on the way; latest reads it early.
  • untrack reads without subscribing; flush drains the update queue now.

Stores

Nested reactive state with per-property tracking. Stores covers drafts, projections, and optimistic stores.


Lifecycle and actions

Coordinating async work and the moments around it. Async reactivity is the concept page.

  • action runs a mutation whose writes commit together.
  • onSettled runs once after the current owner's pending work has finished, and can return a cleanup.
  • refresh re-asks an async source; affects marks values as pending while it does.
  • until awaits a reactive condition.

Components and context


Flow components

Built-in components for conditions, lists, and boundaries. Components and JSX and Boundaries show them in use.

  • Show renders content when a condition holds.
  • Switch and Match pick the first matching branch.
  • For renders a row per array item; Repeat renders a row per index.
  • Loading shows a fallback while async reads have no value.
  • Errored renders a fallback when the subtree throws.
  • Reveal orders how sibling Loading boundaries appear.

Advanced

Owner introspection, specialized effects, store internals, list primitives, manual hydration, interop, and development hooks. These pages support libraries and tooling; application code rarely needs them.


Types

Last updated: 9/30/26, 8:28 PMEdit this pageReport an issue with this page