The umbrella doc. Day 1 is fully reworked here; Day 2 keeps its old shape pending its own rework. Owner: Dennis Smolek · Reworked: 2026-08-14

What this workshop is

Two hands-on days at Three.js Conf Paris (Gobelins, Sep 8–9, up to 40 people) plus a conference talk on the 11th. The audience is intermediate-to-advanced — they know Three, they've at least seen React — and the pitch matches: R3F v10 on WebGPU, taught by the people shipping it, before it's out. Nobody watches slides for two days; everyone leaves with things they built.

The three ideas everything hangs on

The site is the spine. Day 1's project is the workshop's own site. Every block builds a piece and adds it to the spine; by 5pm each attendee has rebuilt the whole thing, and every piece also stands alone at its own route. One cohesive artifact instead of a folder of disconnected exercises.

Nobody gets left behind — by design, not effort. The day is a linear chain of runnable checkpoints. Behind is a git switch, not a crisis. Floaters work the floor, Ava runs the clock, the overflow/breaks are catch-up time on purpose, and every capstone has a hosted fallback for the machine that dies.

Demos stay short; the writing carries the depth. 15–20 minutes of live build per block, then floor time against written step pages. Agents are welcome and expected — attendees type, break, and fix.

Day 1

Detail lives in the Day 1 Plan and Lesson Plans pages; the shape:

Time Block
09:00 Mini-keynote + expectations (~25 min, doubles as install buffer)
09:35 Setup gate, then L1: the hero, explained — core R3F via the Eiffel scene
10:30 L2: make it alive — the loop, refs, events, leva; overflow/break floats to fit
12:00 Lunch
13:00 TSL — nodes, uniforms, compute → the flip demo (the heavy block)
14:00 State — React → zustand → the time-of-day store; the sky joins the hero
14:50 Physics — fast show → the globby footer
15:20 Finale — sky internals, postprocessing, polish to match the deploy
16:30 Stretch pool, then recap + Day 2 pick

What v10 gets showcased along the way: WebGPU everywhere, the new scheduler, TSL nodes and compute, useRenderPipeline/usePostProcessing, visibility events, and QOL as it comes up. The day sells R3F as a whole; v10 is the hook.

Day 2 — held at its current shape, rework pending

Three instructor-led tracks (was four paths), small groups, pick by interest at the end of Day 1. Track definitions, briefs, and repos get their own rework after Day 1's materials ship.

The repo

One Vite repo for Day 1 (working name paris-workshop); the Day 2 tracks will likely run their own repos, defined when that rework happens. main is the finished site; the day is a linear workshop/stage-NN branch chain; demos and their variants live as routes. One root package.json, install once, switch freely. Deps pin and the repo goes to attendees about a week out — alphas move, so we lock late. The deployed marketing site (Next) stays its own artifact; the workshop repo mirrors its scenes.

Comms

The React-skill poll goes out early. The one prep email (~Sep 1, once the repo locks): clone/verify first, then tooling, WebGPU check, React pre-work, site link, logistics. Optional two-line note before the day. The one rule that survives every plan: nobody installs anything for the first time on conference wifi.

Risks we're actually managing

Risk What we're doing
Alpha churn — v10/drei move under us Pin exact versions late (~Sep 1), lockfile committed, patches ship in-repo if upstream fixes miss the date
The chains are a lot of build in 2 weeks Stretch pool and variants are the designed cuts; hero/TSL/state never get cut
A WebGPU-less laptop shows up Browser check in the prereqs, verify script catches it at home, hosted capstones as day-of fallback
The TSL block leaves people behind Say it from the stage, richest step pages, agents pointed at exactly this gap, checkpoint always waiting
Morning slippage eats the day Overflow/breaks float by design; L2's tail steps are self-serve; Ava owns the clock
Conference wifi Everything installed at home, assets in the repo, hosted fallbacks

Where everything lives