# Reference

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

Source: [https://askrjs.com/docs/reference](https://askrjs.com/docs/reference)

Status: stable. Packages: @askrjs/askr.

**Published packages are authoritative.** Examples may lag behind a published contract. When guidance differs, verify the exports and TypeScript declarations in your installed package, then file an issue.

## Example

```tsx
// 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.

## In this section

- [API Index](https://askrjs.com/docs/reference/api/index.md): API Index: published entrypoints, signatures, and the constraints around them.
- [Package Map](https://askrjs.com/docs/reference/package-map/index.md): Package Map: published entrypoints, signatures, and the constraints around them.
- [JSX Reference](https://askrjs.com/docs/reference/jsx-reference/index.md): JSX Reference: published entrypoints, signatures, and the constraints around them.
- [Behavioral Contracts](https://askrjs.com/docs/reference/behavioral-contracts/index.md): Behavioral Contracts: published entrypoints, signatures, and the constraints around them.
- [Testing Utilities](https://askrjs.com/docs/reference/testing-utilities/index.md): Testing Utilities: published entrypoints, signatures, and the constraints around them.
- [FX Timing Utilities](https://askrjs.com/docs/reference/fx/index.md): FX Timing Utilities: published entrypoints, signatures, and the constraints around them.
- [Advanced and Custom Runtimes](https://askrjs.com/docs/reference/custom-runtimes/index.md): Advanced and Custom Runtimes: published entrypoints, signatures, and the constraints around them.
- [Compatibility and Migration Notes](https://askrjs.com/docs/reference/compatibility/index.md): Compatibility and Migration Notes: published entrypoints, signatures, and the constraints around them.
- [Glossary](https://askrjs.com/docs/reference/glossary/index.md): Glossary: published entrypoints, signatures, and the constraints around them.
- [Troubleshooting](https://askrjs.com/docs/reference/troubleshooting/index.md): Troubleshooting: published entrypoints, signatures, and the constraints around them.

## Documentation navigation

[Previous](https://askrjs.com/docs/guides/migration-from-react/index.md) | [Next](https://askrjs.com/docs/reference/api/index.md)
