UCE Docs / RENDER

Signature

RENDER(Request& context)

Defines the main HTTP render handler for the current .uce page.

When a page is requested over HTTP, the runtime loads the target file and calls its RENDER(Request& context) function.

Entry Point Behavior

The default page entrypoint is always the plain RENDER(Request& context) handler.

Reusable component handlers live on COMPONENT(Request& context) and COMPONENT:NAME(Request& context). The component helpers call those handlers, not RENDER().

The request environment is passed explicitly through context, including params, cookies, post data, session state, headers, uploaded files, and the current context.props tree.

If the file defines ONCE(Request& context), the runtime calls that hook once per request before the first RENDER() or COMPONENT... entrypoint from that unit runs.

If the file defines INIT(Request& context), the runtime calls that hook once when the worker loads the compiled unit into memory.

For a normal direct page request, context.props starts empty.

If the page is invoked from another UCE file via unit_render(file_name, context), the callee receives that same context.

Pages that serve WebSocket traffic may expose both RENDER(Request& context) and WS(Request& context). Files may also define COMPONENT() handlers when one unit needs both page and component behavior.

In that case:

  • RENDER(Request& context) serves the direct HTTP response

  • WS(Request& context) handles later WebSocket messages

  • COMPONENT() remains available only through the component helpers

Example

print("RENDER is a unit directive; place it at top level in a .uce unit.\n");
Output
RENDER is a unit directive; place it at top level in a .uce unit.