Askr documentation
Reference

Runtime and Renderer Boundaries

Runtime and Renderer Boundaries: published entrypoints, signatures, and the constraints around them.

Example

Use Askr’s public boot APIs to mount an application. Runtime and renderer-host construction are not exported for application use.

import { createSPA } from '@askrjs/askr/boot';
import { createRouteRegistry, route } from '@askrjs/askr/router';

const registry = createRouteRegistry(() => route('/', HomePage));
await createSPA({ root: '#app', registry });

Public application entrypoints

Mount a browser application with createSPA() or hydrate server-rendered markup with hydrateSPA() from @askrjs/askr/boot. These public APIs own runtime setup; application code does not need to construct a runtime first.

Runtime ownership

Application primitives such as state() and derive() use the runtime managed by Askr's public boot APIs. There is no public API for retrieving or configuring a process-wide runtime singleton.

Renderer support

Askr does not publish a custom renderer-host extension API. Use the browser rendering APIs for client applications and the published SSR or SSG APIs for generated HTML; a non-DOM renderer is not a supported extension point.

Current package exports

Askr no longer exports @askrjs/askr/experimental or its runtime and renderer-host construction APIs. Use the public boot, component, and state APIs to mount and extend applications, and avoid depending on internal implementation fields.