Glossary
Use glossary with the current published Askr packages.
@askrjs/askr0.0.59
How to use glossary
Import only the entrypoint that owns the API. Use generated reference pages for exact signatures and this guide for behavioral constraints.
- Import the published @askrjs/askr entrypoint.
- Keep glossary configuration next to the component, route, or server composition root that owns it.
- Handle pending, unavailable, cancellation, and failure states, then verify the production path.
import * as api from '@askrjs/askr';
// Stay on the published entrypoint instead of reaching into dist/ or src/.
const availableExports = Object.keys(api);Runtime terms
**State** is a readable/settable cell created by `state()`, returned as a tuple-like `StateTuple<T>` you can both call and destructure. **Scope** is a `defineScope()`/`readScope()` pair for passing a value down the component tree without prop drilling. **Derived** and **Selector** wrap `derive()` and `selector()` — computed values that stay in sync with their sources without you manually re-running the calculation.
Routing terms
A **route** is registered with `route(path, component, options?)` and matches a `RouteContext` carrying `params`, `pathname`, `search`, `hash`, and an `AbortSignal`. **Route mode** is one of `'spa' | 'ssr' | 'ssg'`, and an **access decision** from a route policy is one of `allow`, `redirect` (with a status like 301–308), or `deny` (401/403/404).
Data terms
A **query** (from @askrjs/askr/data) tracks async data with loading, error, stale, refreshing, and pending-write states — the same states @askrjs/askr/testing's `mockQuery` lets you construct directly for tests. **Invalidation** marks a cache prefix as stale so the next read triggers a refetch, and an **invalidation recorder** is the testing utility that captures those calls.
Rendering terms
A **VNode** is the lightweight render output shape — a string, number, boolean, null/undefined, or a `DOMElement` with `type`/`props`/`children`. A **component instance** is the runtime's bookkeeping record for one mounted component (its abort controller, state values, cleanup functions); **hydration** is the process of attaching that runtime bookkeeping to server-rendered markup already sitting in the DOM.