<!-- markdownlint-disable MD013 MD033 -->
<!-- This file is generated by Paradox. Do not edit manually. -->

# @ankhorage/runtime

![license: MIT](./paradox/badges/license.svg) ![npm: v3.0.11](./paradox/badges/npm.svg) ![runtime: bun](./paradox/badges/runtime.svg) ![typescript: strict](./paradox/badges/typescript.svg) ![eslint: checked](./paradox/badges/eslint.svg) ![prettier: checked](./paradox/badges/prettier.svg) ![build: checked](./paradox/badges/build.svg) ![tests: checked](./paradox/badges/tests.svg) ![docs: paradox](./paradox/badges/docs.svg)

Platform-neutral runtime renderer, contracts, and helpers for Ankhorage generated apps.

## Usage

### Framework-neutral runtime boundary

`@ankhorage/runtime` owns platform-neutral runtime renderer contracts for generated apps.

Host apps keep router, theme, and other framework-specific behavior outside this package and
inject it at the runtime boundary.

Source: `src/readme-usage.ts`

```ts
import { createRuntimeManifest } from './runtimeManifest.js';

createRuntimeManifest({
  config: {
    appId: 'demo',
  },
});
```

## Generated documentation

- [Interactive documentation app](./paradox/index.html)
- [Public API reference](./paradox/exports.md)
- [Component registry](./paradox/components.md)
- [Architecture overview](./paradox/diagrams/architecture-overview.mmd)
- [Module relationships](./paradox/diagrams/module-relationships.mmd)
- [Export graph](./paradox/diagrams/export-graph.mmd)
- [createComponentEventFromHandlerArgs sequence](./paradox/diagrams/sequences/create-component-event-from-handler-args.mmd)
- [createRuntimeEventOperationBindingContext sequence](./paradox/diagrams/sequences/create-runtime-event-operation-binding-context.mmd)
- [executeDbPersistAction sequence](./paradox/diagrams/sequences/execute-db-persist-action.mmd)
- [mergeRuntimeRendererConfig sequence](./paradox/diagrams/sequences/merge-runtime-renderer-config.mmd)
- [resolveDbPersistInput sequence](./paradox/diagrams/sequences/resolve-db-persist-input.mmd)
- [resolveRuntimeActionPayload sequence](./paradox/diagrams/sequences/resolve-runtime-action-payload.mmd)
- [resolveRuntimeActionValue sequence](./paradox/diagrams/sequences/resolve-runtime-action-value.mmd)
- [RuntimeRendererConfigProvider sequence](./paradox/diagrams/sequences/runtime-renderer-config-provider.mmd)
- [RuntimeScreen sequence](./paradox/diagrams/sequences/runtime-screen.mmd)
- [useManifest sequence](./paradox/diagrams/sequences/use-manifest.mmd)
- [useManifestContext sequence](./paradox/diagrams/sequences/use-manifest-context.mmd)
- [useOptionalManifestContext sequence](./paradox/diagrams/sequences/use-optional-manifest-context.mmd)
- [useRuntimeRendererConfig sequence](./paradox/diagrams/sequences/use-runtime-renderer-config.mmd)
- [useRuntimeScreenOperationLoaders sequence](./paradox/diagrams/sequences/use-runtime-screen-operation-loaders.mmd)
- [validateRuntimeBindingOperationRef sequence](./paradox/diagrams/sequences/validate-runtime-binding-operation-ref.mmd)
- [wrapRuntimeEventProps sequence](./paradox/diagrams/sequences/wrap-runtime-event-props.mmd)
