# Design in React. Publish as PDF.

Build documents with React components, CSS, and your data. Satzstrom handles typesetting and page breaks. It runs locally on Windows x64 and Linux x64.

## Make it your own

Build reports, books, invoices, magazines, or research papers. [Open the example PDFs and source code](/examples.md).

## A document is a React component

Use HTML, CSS, fonts, and browser-compatible libraries from your project. Build reusable templates and fill them with data. `Page` creates a fixed page. `PageMaster` lets content flow across pages, with optional repeating headers and footers.

Satzstrom plans line breaks and hyphenation across paragraphs. Text, tables, and footnotes continue across pages. Contents and cross-references receive calculated page numbers.

Semantic HTML supplies tagged PDF structure. PDF/A-2a and PDF/UA-1 are available as output profiles. Accessible output depends on suitable document structure, language, alternative text, and link names.

## Work with a coding agent

Codex or Claude Code can write the document, inspect page images, and refine the layout. The official skill guides authoring; the local MCP tools include `check`, `inspect`, and `render`. [Start with an agent](/quickstart.md#agent-setup).

## Start with a page

```sh
npm install -g satzstrom
satzstrom init my-document
satzstrom dev my-document/document.tsx
```

The preview updates as you edit. Create the PDF with `satzstrom render my-document/document.tsx`. It uses the same pagination as the preview.

## Markdown navigation

- [Quickstart](/quickstart.md)
- [Features](/features.md)
- [0.1.4 Public Preview](/preview.md)
- [Examples](/examples.md)
- [Enterprise](/enterprise.md)
- [MCP and agents](/mcp.md)
- [Documentation](/docs.md)
- [Privacy](/privacy.md)
- [Complete Markdown index](/llms.txt)
