YAWN.
Worker-native rendering toolkit

Build the graph.
Share the data.

Start with the complete interactive scene, then pull apart the focused recipes for graph ASTs, external pipelines, glTF workers, mesh handles, and direct shared-memory mutation.

Interactive example · all packages

Render Graph Studio

Edit an FXNode graph, swap JSO loadouts, stream procedural glTF through shared memory, pick instances, and orbit the shared-SOA camera.

Launch studio

Focused recipes

Small ES modules meant to copy, change, and combine.

01 · AST

Canonical DAG

Share one graph output through references and serialize it as an S-expression.

02 · JSO

Plain object graph

Describe a graph with ordinary JavaScript objects and compile to the canonical AST.

03 · JSO

Fluent builder

Author the same public graph contract with a compact chainable API.

04 · FXNode

Snapshot export

Turn an editor snapshot into the same AST consumed by every other frontend.

05 · Pipelines

Default loadout

Attach the optional external pipeline addon without placing shaders in core.

06 · WGSL

Custom render pipeline

Provide scene WGSL, entry points, and state as graph-owned data.

07 · Compute

Compute pipeline

Declare a compute shader and dispatch dimensions inside the graph loadout.

08 · Lifecycle

Compile and switch

Prepare and transactionally activate compiled graph resources.

09 · glTF

Shared import worker

Parse a URL in a worker and write generic render data directly into shared SOA memory.

10 · Handles

Mesh instances

Use conventional generation-safe mesh and instance objects over the core protocol.

11 · SOA

Custom column

Request an aligned instance-sized array, then mutate it without messages.

12 · SAB

Direct animation

Update guarded transforms at frame rate through shared memory.

13 · Picking

BVH picking

Ray-pick shared scene data using the optional mesh-handles worker.

14 · Workers

Worker to worker

Run the public core API from any browser worker through a MessagePort.

15 · Complete

Complete scene

Combine graph, pipeline, glTF import, and mesh addons end to end.

16 · Camera

Camera render data

Orbit, pan, and zoom by directly writing one SIMD-width SAB row.

17 · Handles

Camera and materials

Use familiar camera and material properties while retaining direct SAB mutations.