The whole scene batched, then rasterised on the GPU.
Every renderer runs the same simulation and the same controls, one at a time. Running them together would make them fight over one main thread, and every number would be wrong.
The scene graph is encoded in Rust compiled to WebAssembly, then rasterised by Vello through WebGPU.
React is kept out of the frame loop. Reconciling 30,000 components at 60fps would cost more than the drawing does, so the particles mount once and each frame writes to their props through refs before asking for a redraw. Konva does the same.