Documentation

DOC / 11 / RUNTIME

Browser runtime

Resume Rust/WASM behavior and admit GSAP, Lenis, Three.js, or WebGL through lifecycle adapters.

In this guideBrowser runtime
Getting startedProject structureCLI referenceDeveloper loopRouting and pagesRust viewsEvents and foldsSchemas and snapshotsHyphae verified syncTyped contentBrowser runtimeDOM ownershipAdaptive assetsArtifact trustErrors and diagnosticsBuild and deployCrates and APILicensing and policy

Resume owned behavior

The site package emits complete HTML. The optional client package compiles to WASM and resumes only the stateful boundary marked by the document. It does not hydrate or diff the entire page.

toml
[client]
package = "my-app-client"
wasm_name = "my_app_client"
bindgen_output = "target/my-app-client/pkg"

External adapter contract

javascript
export default {
  version: 1,
  mount(context) {
    const instance = createLibrary(context.root, context.props);
    return {
      update(next) { instance.update(next); },
      unmount() { instance.destroy(); }
    };
  }
};

GSAP, Lenis, Three.js, WebGL, and other mature browser libraries remain native JavaScript. PliegoRS owns when they load, which capabilities admit them, and how they are cancelled and cleaned up.

Admission policy

trigger
load, visible, interaction, or explicit intent
capability tier
Device and renderer requirements checked before import
Save-Data
Can deny optional media or runtime work
reduced motion
Preserves content and actions while removing nonessential motion

Cleanup is automatic

Unmount, route replacement, policy changes, aborted imports, and failed updates cannot leave an adapter alive. Async cleanup completes before the next generation mounts.