Askr documentation
Reference

Reference

Reference: published entrypoints, signatures, and the constraints around them.

Example

// Every public API is reached through a published entrypoint.
// Reaching into dist/ or src/ is not supported and will break on upgrade.
import { derive, state } from '@askrjs/askr';
import { createSPA } from '@askrjs/askr/boot';
import { createRouteRegistry } from '@askrjs/askr/router';
import { renderToString } from '@askrjs/askr/ssr';

API index

Every published Askr entrypoint has a generated reference page under /docs/reference/api, built straight from the declaration files each package ships in dist/. There's no hand-maintained prose here — the exports, their signatures, and their JSDoc comments come from the actual .d.ts output, so the page can't drift from what you actually get when you `import` something.

Packages

The Package Map page groups every @askrjs/* package by what it's for: runtime, server, UI, and tooling. Each package has its own version and its own subpath exports (check package.json's "exports" field before assuming a subpath exists), so treat this section as the starting point when you're not sure which package a given API lives in.

Behavioral contracts

Beyond types, a few runtime behaviors are worth documenting on their own: how rendering commits, how cancellation propagates through AbortSignal, and how component instances get torn down. These aren't enforced by the type checker, so this page exists to spell out what actually happens at runtime.

Compatibility

Askr's packages are versioned independently and published together as a matched set. The compatibility page tracks which versions are meant to run together, what changed in recent releases, and what to check when you bump one package without the others.