# Public API reference

This reference is generated from the installed, version-pinned **3.2.0-rc.2** packages. These guides target the 3.2.0-rc.2 release candidate. It is a prerelease; check the release record and qualify your application before rollout. It enumerates the exports TypeScript resolves from each public package entry point, including overloads, generic parameters, option types, return types and the documentation shipped with those declarations. It does not infer APIs from private source files.

## TypeScript entry points

- [`@getforma/core`](/docs/3.2/api-core/) — Signals, ownership, DOM construction, keyed lists, islands and browser utilities.
- [`@getforma/core/runtime`](/docs/3.2/api-runtime/) — Explicit HTML runtime mounts, grants, diagnostics and scope inspection.
- [`@getforma/core/runtime-hardened`](/docs/3.2/api-runtime-hardened/) — The hardened HTML runtime entry point and its published mount contract.
- [`@getforma/core/runtime-csp`](/docs/3.2/api-runtime-csp/) — The runtime-csp package export aliases the hardened runtime.
- [`@getforma/core/tc39`](/docs/3.2/api-tc39/) — The optional class-based State and Computed compatibility API.
- [`@getforma/core/http`](/docs/3.2/api-http/) — Reactive fetch, server-sent events and WebSocket clients with their option and result types.
- [`@getforma/core/storage`](/docs/3.2/api-storage/) — Typed localStorage, sessionStorage and IndexedDB wrappers.
- [`@getforma/compiler`](/docs/3.2/api-compiler/) — The native compiler's esbuild plugin, diagnostics, declared schemas and FMIR utilities.
- [`@getforma/build`](/docs/3.2/api-build/) — The build function, application configuration, manifests and size-report types.
- [`@getforma/core/compiled`](/docs/3.2/api-compiled/) — Compiler-generated DOM construction support exposed through an optional runtime entry.
- [`@getforma/core/navigation`](/docs/3.2/api-navigation/) — Scoped native owner preparation, validation and lifecycle primitives used by router adapters.
- [`@getforma/router`](/docs/3.2/api-router/) — Route matching, browser and native adapters, navigation, layouts, actions and lifecycle contracts.
- [`JSX namespace`](/docs/3.2/api-jsx/) — Global JSX element and reactive attribute types included by @getforma/core.

## Reading a declaration

Import a value or exported type from the entry point shown on its page. A referenced type explains a signature without claiming an additional named export. The JSX page describes a global namespace loaded by core. Symbols marked internal are shipped for framework/compiler integration, not recommended application APIs. A generic type argument documents an expected shape; it is not runtime input validation.

Each page links to the exact package declaration. The coordinated release source is [3b6c7766](https://github.com/getforma-dev/forma/tree/3b6c7766a1b47558e666f76236a53697b3737bde). This reference covers the ESM TypeScript entry points; CommonJS conditions use their published companion declarations.

## Rust API reference

The native crates publish their generated API documentation separately, pinned here to the same 3.2.0-rc.2 release:

- [forma-server 3.2.0-rc.2](https://docs.rs/forma-server/3.2.0-rc.2/forma_server/) — page binding, responses, assets and Axum integration.
- [forma-ir 3.2.0-rc.2](https://docs.rs/forma-ir/3.2.0-rc.2/forma_ir/) — the native representation, declared schemas and renderer.
- [forma-ir-derive 3.2.0-rc.2](https://docs.rs/forma-ir-derive/3.2.0-rc.2/forma_ir_derive/) — the PageProps derive macro.

Start with [a connected application](/docs/3.2/getting-started/) and [the routing guide](/docs/3.2/routing/). Lower-level usage guides link to the coordinated source reference: [Rust server](https://github.com/getforma-dev/forma/blob/3b6c7766a1b47558e666f76236a53697b3737bde/crates/forma-server/README.md), [declared props](https://github.com/getforma-dev/forma/blob/3b6c7766a1b47558e666f76236a53697b3737bde/docs/DECLARED-PROPS.md), [core](https://github.com/getforma-dev/forma/blob/3b6c7766a1b47558e666f76236a53697b3737bde/packages/core/docs/API.md), [HTML runtime](https://github.com/getforma-dev/forma/blob/3b6c7766a1b47558e666f76236a53697b3737bde/packages/core/docs/HTML-RUNTIME.md) and [build configuration](https://github.com/getforma-dev/forma/blob/3b6c7766a1b47558e666f76236a53697b3737bde/packages/build/README.md).

## Guides and runnable examples

The [native router lab](/lab/router/) and [runnable router project](/examples/native-router/) demonstrate retained layouts and distinct destination islands. The [playground](/play/) runs browser examples; the [native lab](/lab/native/) demonstrates request-time Rust rendering. The browser playground supplies core's root entry point; its import allowlist does not currently include the HTTP, storage or runtime subpaths.