Zum Inhalt springen
CASOON

Typst Universe und Ökosystem: Tools, Pakete und Community im Überblick

Typst Universe, Editoren, CI/CD-Integration und Community-Ressourcen — alles für den produktiven Einsatz von Typst.

10 Minuten
Typst Universe und Ökosystem: Tools, Pakete und Community im Überblick
#Typst #Tools #Open Source #Community
SerieTypst
Teil 5 von 6

In den vorherigen Artikeln dieser Serie ging es um die Grundlagen, praktische Anwendung und konkrete Projekte mit Typst. Zum Abschluss folgt ein Überblick über das Ökosystem: Wo findet man Dokumentation? Welche Tools machen produktiv? Wie sieht die Community aus – und wohin entwickelt sich Typst?

Dokumentation und Lernressourcen

Offizielle Dokumentation

Die offizielle Dokumentation unter typst.app/docs ist der beste Einstiegspunkt:

BereichInhaltEmpfehlung
TutorialSchritt-für-Schritt-EinführungFür absolute Anfänger
ReferenceAlle Funktionen mit BeispielenAls Nachschlagewerk
GuidesThemenspezifische AnleitungenFür konkrete Aufgaben

Die Dokumentation ist durchsuchbar und enthält interaktive Beispiele, die direkt im Browser ausführbar sind.

Besonders nützlich:

Community-Ressourcen

Neben der offiziellen Dokumentation gibt es wachsende Community-Inhalte:

Typst lernen (Kurs) Kostenloser deutschsprachiger Kurs mit Schritt-für-Schritt-Anleitungen: learn.casoon.dev/courses/typst-lernen

Awesome Typst Eine kuratierte Liste von Ressourcen, Templates und Tools: github.com/qjcg/awesome-typst

Typst Examples Book Sammlung von Code-Beispielen für häufige Anwendungsfälle: github.com/sitandr/typst-examples-book

Cheatsheets

Video-Tutorials

Auf YouTube finden sich zunehmend Tutorials:

  • Offizielle Einführungsvideos auf dem Typst-Kanal
  • Community-Tutorials zu spezifischen Themen (Templates, Wissenschaftliche Arbeiten)

Editoren und Integrationen

Web-Editor (typst.app)

Der offizielle Web-Editor unter typst.app bietet:

  • Echtzeit-Preview: Änderungen sofort sichtbar
  • Projekt-Verwaltung: Mehrere Dokumente organisieren
  • Collaboration: Gemeinsam bearbeiten (wie Google Docs)
  • Template-Galerie: Fertige Vorlagen zum Starten
  • Export: PDF, PNG für einzelne Seiten

Kostenlose Version:

  • Unbegrenzte öffentliche Projekte
  • 3 private Projekte
  • 500 MB Speicher

Pro-Version (ca. 8€/Monat):

  • Unbegrenzte private Projekte
  • 10 GB Speicher
  • Prioritäts-Rendering

Für Einsteiger und kleinere Projekte reicht die kostenlose Version.

Visual Studio Code

Die beste lokale Entwicklungsumgebung. Zwei Extensions sind relevant:

Typst LSP (empfohlen)

  • Syntax-Highlighting
  • Auto-Completion
  • Fehleranzeige in Echtzeit
  • Go-to-Definition
  • Hover-Dokumentation

Installation: ext install nvarner.typst-lsp

Typst Preview

  • Live-Preview im Editor
  • Synchronisiertes Scrollen
  • Keine externe PDF-App nötig

Installation: ext install mgt19937.typst-preview

Empfohlene VS Code Settings:

{
  "typst-lsp.exportPdf": "onSave",
  "typst-lsp.experimentalFormatterMode": "on",
  "[typst]": {
    "editor.formatOnSave": true,
    "editor.wordWrap": "on"
  }
}

Weitere Editoren

EditorSupportBemerkung
NeovimLSP + TreeSittertypst.vim Plugin, volle LSP-Unterstützung
ZedEingebautNative Unterstützung, sehr schnell
Sublime TextSyntax-PaketGrundlegende Highlighting
Emacstypst-modeCommunity-Paket
HelixLSPÜber typst-lsp

Für Vim/Neovim-Nutzer:

-- nvim-lspconfig
require('lspconfig').typst_lsp.setup{
  settings = {
    exportPdf = "onSave"
  }
}

CLI-Tools

typst (Haupttool)

# Kompilieren
typst compile dokument.typ

# Watch-Modus
typst watch dokument.typ

# Mit Schriftpfad
typst compile --font-path ./fonts dokument.typ

# Andere Formate
typst compile dokument.typ output.png  # PNG
typst compile dokument.typ output.svg  # SVG

typstfmt (Formatter) Automatische Code-Formatierung:

cargo install typstfmt
typstfmt dokument.typ

typst-preview (Standalone) Live-Preview ohne Editor:

cargo install typst-preview
typst-preview dokument.typ

CI/CD-Integration

GitHub Actions

Typst lässt sich einfach in GitHub Workflows integrieren:

# .github/workflows/build-pdf.yml
name: Build PDF

on:
  push:
    branches: [main]
  pull_request:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      
      - name: Setup Typst
        uses: typst-community/setup-typst@v3
        
      - name: Compile document
        run: typst compile main.typ output.pdf
        
      - name: Upload PDF
        uses: actions/upload-artifact@v4
        with:
          name: document
          path: output.pdf

Mit Caching für Fonts:

- name: Cache fonts
  uses: actions/cache@v4
  with:
    path: ~/.cache/typst
    key: typst-fonts-${{ hashFiles('fonts/**') }}
    
- name: Compile with custom fonts
  run: typst compile --font-path ./fonts main.typ

GitLab CI

# .gitlab-ci.yml
build-pdf:
  image: ghcr.io/typst/typst:latest
  script:
    - typst compile main.typ output.pdf
  artifacts:
    paths:
      - output.pdf

Docker

Offizielles Docker-Image:

docker run -v $(pwd):/app ghcr.io/typst/typst:latest \
  typst compile /app/main.typ /app/output.pdf

Für Build-Pipelines mit eigenen Fonts:

FROM ghcr.io/typst/typst:latest
COPY fonts/ /usr/share/fonts/
RUN fc-cache -fv
WORKDIR /app
ENTRYPOINT ["typst"]

Open-Source-Projekte

typst-business-templates (docgen)

Repository: github.com/casoon/typst-business-templates

Professionelle Geschäftsdokumente für Freelancer und kleine Unternehmen:

typst-business-templates/ ├── cli/ # Rust CLI (docgen) ├── templates/ # Typst-Vorlagen │ ├── invoice/ # Rechnungen │ ├── offer/ # Angebote │ ├── credentials/ # Zugangsdaten │ ├── concept/ # Konzepte │ └── documentation/ # Dokumentationen ├── locale/ # Übersetzungen (7 Sprachen) ├── fonts/ # 10 Font-Presets ├── examples/ # Komplette Beispielprojekte └── schema/ # JSON-Schemas

Für andere nützlich:

  • Templates als Ausgangspunkt für eigene Designs
  • JSON-Schema-Struktur für Dokumentenautomatisierung
  • CLI-Architektur als Referenz für ähnliche Tools
  • Multi-Language-Setup für internationale Projekte

Schnellstart:

brew install docgen  # oder via Install-Script
docgen init my-business
cd my-business
docgen

renderreport

Repository: github.com/casoon/renderreport

Rust-Library für datengetriebene Reports mit Typst als eingebetteter Engine:

renderreport/
├── src/
│   ├── engine/          # Core Rendering
│   ├── components/      # ScoreCard, Finding, Table, etc.
│   ├── theme/           # Token-basiertes Theming
│   ├── pack/            # Template-Pack-System
│   └── render/          # Typst-Integration
├── templates/           # Eingebaute Templates
├── packs/               # Erweiterungspakete
└── examples/            # Nutzungsbeispiele

Für andere nützlich:

  • Komponenten-Architektur für Report-Generierung
  • Typst als Library einbinden (nicht CLI)
  • Theme-Token-System für konsistentes Styling
  • Pack-System für erweiterbare Templates

Nutzung:

use renderreport::prelude::*;

let engine = Engine::new()?;
let report = engine.report("default")
    .title("Audit Report")
    .add_component(ScoreCard::new("Score", 85))
    .build();

let pdf = engine.render_pdf(&report)?;

Typst Universe: Package-Ökosystem

Das offizielle Package-Repository unter typst.app/universe wächst stetig:

Beliebte Packages

PackageBeschreibung
tablexErweiterte Tabellen mit Merge, Styling
cetzZeichnungen und Diagramme (wie TikZ)
fletcherFlowcharts und Diagramme
codlyCode-Highlighting mit Zeilennummern
showyboxDekorative Boxen und Callouts
modern-cvLebenslauf-Template
charged-ieeeIEEE-Paper-Template
ilmWissenschaftliche Arbeiten

Packages verwenden

// Import aus Universe
#import "@preview/tablex:0.0.8": tablex, rowspanx, colspanx

#tablex(
  columns: 3,
  rowspanx(2)[A], [B], [C],
  (), [D], [E],
)

Das @preview-Prefix zeigt an, dass das Package aus dem Universe kommt. Nach der Stabilisierung wechselt es zu @std.

Eigene Packages veröffentlichen

  1. Repository auf GitHub erstellen
  2. typst.toml Manifest hinzufügen:
[package]
name = "mein-package"
version = "0.1.0"
entrypoint = "lib.typ"
authors = ["Name <email>"]
license = "MIT"
description = "Kurze Beschreibung"
  1. Pull Request an typst/packages

Die Review-Zeit ist typischerweise kurz, die Community freundlich.

Community und Support

Offizielle Kanäle

Community-Charakter

Die Typst-Community ist bemerkenswert freundlich und hilfsbereit. Typisch für junge Projekte mit motivierten Early Adopters. Fragen werden schnell beantwortet, auch von den Kernentwicklern.

Beitragen

Typst ist Open Source (Apache-2.0). Beitragsmöglichkeiten:

  • Bug-Reports: Probleme dokumentieren
  • Feature-Requests: Ideen einbringen
  • Packages: Eigene Erweiterungen veröffentlichen
  • Templates: Vorlagen teilen
  • Dokumentation: Übersetzungen, Tutorials
  • Code: Rust-Kenntnisse für Core-Entwicklung

Das Projekt ist gut organisiert, Issues sind gelabelt, Contributing-Guidelines klar.

Zukunftsaussichten

Aktuelle Entwicklung

Typst entwickelt sich schnell. Wichtige Bereiche:

Stabilität:

  • Das Dateiformat ist seit v0.11 stabil
  • Breaking Changes werden vermieden
  • Langzeit-Support für Dokumente

Features in Arbeit:

  • HTML-Export (experimentell)
  • Verbesserte Tabellen-Layouts
  • Erweiterte Math-Unterstützung
  • Accessibility (PDF/UA)

Ökosystem:

  • Wachsende Package-Sammlung
  • Mehr Editor-Integrationen
  • Besseres Tooling (Formatter, Linter)

Typst ist Teil einer breiteren Bewegung:

  1. Weg von LaTeX-Komplexität: Markdown-ähnliche Syntax wird Standard
  2. Programmierbare Dokumente: Scripting eingebaut, nicht nachgerüstet
  3. Web-first: Browser-basierte Editoren, Echtzeit-Collaboration
  4. Developer Experience: Schnelle Feedback-Loops, gute Fehlermeldungen

Typst trifft den Zeitgeist: Modern genug für neue Projekte, mächtig genug für anspruchsvolle Anforderungen.

Realistische Einschätzung

Wo Typst bereits stark ist:

  • Technische Dokumentation
  • Interne Reports und Konzepte
  • Neue Projekte ohne Legacy-Anforderungen
  • Teams, die LaTeX vermeiden wollen

Wo LaTeX (noch) dominiert:

  • Akademische Journals mit LaTeX-Pflicht
  • Projekte mit spezialisierten LaTeX-Packages
  • Bestehende Dokumente, die Migration nicht rechtfertigen

Die Koexistenz wird bleiben. Aber für neue Projekte ist Typst oft die bessere Wahl.

Rückblick auf die Serie

Diese Artikelserie hat Typst von den Grundlagen bis zur Praxis vorgestellt:

  1. Einführung: Warum Typst, Vergleich mit LaTeX
  2. Praxis-Einstieg: Installation, Syntax, erste Dokumente
  3. Professionelle Dokumente: Templates, Automatisierung, Datenintegration
  4. Praxisprojekte: docgen und renderreport im Einsatz
  5. Ökosystem: Tools, Ressourcen, Community (dieser Artikel)

Typst ist kein Spielzeug – es ist ein ernstzunehmendes Werkzeug für moderne Dokumentenerstellung. Die Kombination aus lesbarer Syntax, schneller Kompilierung und wachsendem Ökosystem macht es zur ersten Wahl für alle, die professionelle PDFs ohne LaTeX-Frustration erstellen wollen.

Der beste nächste Schritt: Ein kleines Projekt starten. Die Lernkurve ist flach, die Ergebnisse überzeugen.


Wichtige Links:

Offizielle Ressourcen:

Editoren:

Projekte aus dieser Serie:

Community: