← All guides
Learning

Explore and Labs

Two different things with a family resemblance: Explore is an interactive step inside a lesson; Labs are standalone simulations with their own pages.

Explore — inside a lesson

An Explore step is a widget anchored to a concept card, so it arrives at the moment the idea it manipulates has just been introduced. The engine lives in components/interactive/:

Balance · Bars · Categorize · Compounding · Explorer · Gauge · Graph · Grow · Hotspot · Lab · Match · NumberLine · Sort · Steps — plus Challenges, the predict-then-reveal loop.

Each widget carries a takeaway: the one sentence the manipulation is supposed to leave you with. That field is doing real work — it is what makes a widget a lesson step rather than a toy, and it is also the single best-written line in the corpus, which is why the social system mines it.

Primary is a different engine

Primary lessons use KidWidget — a warmer, GSAP/canvas engine with its own 13 widget types and a no-fail interaction model. When a lesson has kid widgets they replace the standard interactives for that tier, with one exception: lab widgets are additive and always survive.

How many appear is an admin setting (0–4), applied at runtime. See 20 · The admin backend.

Labs — standalone

227 single-file simulations at /labs, one HTML file each: no dependencies, no build step, no network calls. Open one and it runs.

They are real simulations rather than animations — you change a parameter and the thing recomputes, rather than scrubbing a pre-rendered timeline. That distinction is the whole pitch and it is worth protecting in any copy you write about them.

A lab can also appear inside a lesson as a lab-type Explore step, embedded through a postMessage bridge, so the same file serves both surfaces.

Where they came from

Labs are the subject of their own campaign (_labs-social/), with 87 narrated vertical clips cut from screen captures. If you are writing about a specific lab and want to know what it actually demonstrates, watch the clip — the copy in the campaign files was corrected against the running simulation more than once, and the simulation won every time.

Taking a classPractice and mastery
HomePracticeFeedBlogMe