Von React zur ersten gesetzten Seite.

Die 0.1.0 Public Preview erzeugt ein eigenständiges Projekt, installiert seine Abhängigkeiten und öffnet eine lokale Live Preview.

Markdown für Agents
Neues Projekt
npm install -g satzstrom
satzstrom init mein-dokument
cd mein-dokument
satzstrom dev
  • init

    Erzeugt alle Projektdateien und installiert die Dependencies. Danach ist keine manuelle Installation nötig.

  • dev

    Richtet die gepinnte Browser-Laufzeit bei Bedarf ein und startet die lokale paginierte Vorschau.

  • render

    Schreibt ohne weiteren Pfad document.pdf. Preview und PDF verwenden dieselbe Paginierung.

Was init anlegt.

Satzstrom versteckt dein Dokument nicht in einem Generatorprojekt. Das Ergebnis von init ist klein, eigenständig und vollständig unter deiner Kontrolle.

document.tsx
Der Default-Export ist dein React-Dokument. Hooks und normale Komponenten funktionieren darin unverändert.
styles.css
Wird automatisch geladen. Weitere CSS-Imports, CSS Modules oder PostCSS bleiben normale Projektdateien.
data.json
Optionale Eingabedaten. Ein benannter Zod-schema-Export validiert sie vor Layout und Render.
package.json
Enthält React, die Satzstrom-Primitives und jede Library, die dein Dokument selbst verwendet.
tsconfig.json
Eine normale TypeScript-Konfiguration für dein eigenständiges Dokumentprojekt.

Das kleinste Dokument ist eine Komponente.

Document ist die Wurzel und trägt die PDF-Metadaten. Page erzeugt genau eine frei gestaltete physische Seite. Für dieses Beispiel brauchst du weder Daten noch ein Schema.

Ein längerer Bericht verwendet zusätzlich PageMaster: Sein normaler React-Layout-Component stellt Kopfzeile, Inhalt und Fußzeile bereit, während der Inhalt über beliebig viele Seiten fließt.

document.tsx
import { Document, Page } from "@satzstrom/primitives";

export default function Report() {
  return (
    <Document title="Mein Bericht" lang="de">
      <Page size="A4">
        <h1>Hallo Satzstrom.</h1>
      </Page>
    </Document>
  );
}

Oder in ein bestehendes Projekt.

Satzstrom kann neben einem bestehenden package.json arbeiten. Es überschreibt weder vorhandene Zielordner noch ungefragt Versionen oder TypeScript-Konfigurationen.

Dokument hinzufügen
cd mein-typescript-projekt
satzstrom add monatsbericht --install
satzstrom dev monatsbericht

Ohne --install bleibt sogar das Manifest unverändert; der Befehl nennt dann nur die fehlenden Dependencies und passende Recovery-Aufrufe.

Mit --dir documents bestimmst du den Zielordner. Satzstrom respektiert den Package Manager aus Manifest oder Lockfile.

Prüfen, ansehen, ausgeben.

Diese drei Befehle decken den normalen Abschluss ab. Wenn die Laufzeit selbst hakt, prüft doctor Node, Chromium und die PDF-Engine.

satzstrom check --strict
Validiert Daten und macht jede Layoutwarnung zum Buildfehler.
satzstrom page 3 --debug
Rendert eine einzelne Seite als PNG und blendet Layoutgrenzen ein.
satzstrom render
Erzeugt das finale PDF; optional auch als PDF/A-2a und PDF/UA-1.