Skip to content
nexisv1.3.3Build with Nexis

Examples

Touch the boundary.
Not the component tree.

The output below was server-rendered. The controls are the only parts that wake in the browser, and they update direct targets instead of rerunning this route.

EVENT + BINDINGlazy on first intent

Signal counter

One serialized Signal is captured by a resumable handler. The output is bound directly to the changing value.

0

Ready to update one DOM node.

const count = state(0)
const increment = () => count.set((current) => current + 1)

<output bindText$={count}>{count()}</output>
<button onClick$={increment}>Increment</button>
SCOPEserializable only

Scope rules are part of the API.

Captured values have to cross a server/browser boundary. Keep them simple, serializable, and independent of private request data.

✓ capture
strings, numbers, plain objects, signals
× never capture
secrets, DOM nodes, database clients, class instances
→ isolate
request values and user state must not be mutable module singletons
Review the boundary model

A static Nexis route receives none of the event or bindings runtime. This route declares both, so Nexis emits only the runtimes it needs.