# Letterpress v0.1.0 - Table of Contents

> Safe, deterministic notification templates for Elixir.

## Pages

- [Overview](readme-1.md)

- Guides
  - [Quick start](quickstart.md)
  - [Compiler and runtime](compiler-and-runtime.md)
  - [Browser editor](browser-editor.md)
  - [Consumer adoption](consumer-adoption.md)
  - [Troubleshooting](troubleshooting.md)

- Livebooks
  - [Quick start Livebook](quick-start.md)
  - [Text and diagnostics Livebook](text-and-diagnostics.md)
  - [Artifacts and translations Livebook](artifacts-and-translations.md)

- Performance
  - [Benchmarks](benchmarks.md)

- Research
  - [Platform analysis](r-01-platform-analysis.md)
  - [Elixir library posture](r-02-library-posture.md)

- Contract
  - [Letterpress contract](lp-01-letterpress-contract.md)

- Architecture
  - [Backend authority](adr-001-backend-authority.md)
  - [Host boundary](adr-002-host-boundary.md)
  - [Caller-owned supervision](adr-003-caller-owned-supervision.md)

- Reference
  - [Documentation map](readme-2.md)
  - [Conformance corpus](readme-3.md)
  - [Usage rules](usage-rules.md)
  - [Contributing](contributing.md)
  - [Releasing](releasing.md)
  - [Security](security.md)
  - [Changelog](changelog.md)
  - [License](license.md)

## Modules

- Public API
  - [Letterpress](Letterpress.md): Safe, deterministic notification templates for Elixir.
  - [Letterpress.Artifact](Letterpress.Artifact.md): The immutable, portable result of compiling a notification template.
  - [Letterpress.Diagnostic](Letterpress.Diagnostic.md): A stable, LSP-shaped diagnostic returned by Letterpress operations.

- Profiles and schemas
  - [Letterpress.Profile](Letterpress.Profile.md): Resolves versioned template profiles from the generated contract.
  - [Letterpress.Schema](Letterpress.Schema.md): Validates and canonicalizes Letterpress variable schemas.

- Compilation
  - [Letterpress.Compiler](Letterpress.Compiler.md): Routes authoring requests to a caller-owned compiler pool.
  - [Letterpress.Compiler.Supervisor](Letterpress.Compiler.Supervisor.md): A caller-owned supervisor for a pool of isolated compiler workers.

- Rendering
  - [Letterpress.Renderer](Letterpress.Renderer.md): Renders verified artifacts in bounded, isolated BEAM processes.

- Contracts
  - [Letterpress.CanonicalJSON](Letterpress.CanonicalJSON.md): Encodes JSON-compatible data into Letterpress's deterministic byte form.
  - [Letterpress.Contract](Letterpress.Contract.md): Loads the generated contract shared by the backend and browser packages.

- Telemetry
  - [Letterpress.Telemetry](Letterpress.Telemetry.md): Documents telemetry emitted around public Letterpress operations.

- Internal modules
  - [Letterpress.Compiler.Worker](Letterpress.Compiler.Worker.md): Owns one framed JSON connection to the bundled Node compiler.
  - [Letterpress.JSON](Letterpress.JSON.md): Normalizes caller data into collision-free JSON-native values.
  - [Letterpress.Renderer.Filters](Letterpress.Renderer.Filters.md): Implements the compiler-reserved final output-context filter.
  - [Letterpress.Renderer.ForTag](Letterpress.Renderer.ForTag.md): The bounded `for` tag used by the Letterpress Liquid renderer.

