Preswald

Preswald

Structured Labs · Coding

Preswald ist ein Open-Source-Framework, das Python-Skripte in interaktive Daten-Apps verwandelt und sie als eigenständige Dateien bündelt, die im Browser ohne Server laufen.

Vorschau der Oberfläche von Preswald

Über Preswald

About

Was ist Preswald

Preswald ist ein Static-Site-Generator für interaktive Daten-Apps. Er wird von Structured Labs entwickelt und unter der Apache-2.0-Lizenz veröffentlicht. Sie schreiben die App in Python, und ein einziger Befehl baut sie zu einem Ordner mit statischen Dateien zusammen, den Sie im Browser öffnen oder an jemand anderen weitergeben können. Auf dem Rechner, der sie ausführt, muss nichts installiert werden.

Das Problem, das er angeht, ist die Auslieferung. Ein Analyst kann eine Analyse mit pandas und Plotly in einem Notebook bauen, aber zum Teilen muss die andere Person meist eine Python-Umgebung einrichten. Preswald packt Code, Daten und Oberfläche in ein tragbares Paket, das offline läuft. Unter der Haube setzt es auf WebAssembly: Pyodide führt Python aus, DuckDB übernimmt die Abfragen, beides direkt im Browser-Tab.

Dieses Design hat Kehrseiten, die man vorab kennen sollte. Weil alles im Client läuft, sind sehr große Datensätze und schwere Berechnungen durch den Rechner und den Arbeitsspeicher des Browsers der Besucher begrenzt. Das Projekt ist zudem jung, und von der Community gemeldete Fehler beim Neuzeichnen von Diagrammen zeigen, dass es noch reift. Die offizielle Website leitet inzwischen zu Structured Labs weiter, wo Preswald neben den anderen Produkten weiterentwickelt wird.

Erste Schritte

  1. Installieren Sie das Paket mit pip install preswald oder uv pip install preswald.
  2. Führen Sie preswald init my_app aus, um das Projektgerüst mit App-Datei, Konfiguration und Beispieldaten zu erzeugen.
  3. Bearbeiten Sie die Python-Datei und importieren Sie UI-Bausteine wie text, table und get_df, um die App aufzubauen.
  4. Starten Sie preswald run, um einen lokalen Entwicklungsserver hochzufahren und die App auf localhost anzusehen.
  5. Führen Sie preswald export aus, um ein statisches Paket in einem Ordner dist/ zu bauen, das offline läuft und weitergegeben werden kann.

Produktinformationen

Ein kurzer Überblick über Preise, unterstützte Plattformen und die Leistung von Preswald.

Kostenloser TarifJa
Bezahlte TarifeFree (open source)
PlattformWeb (browser), Command line
EntwicklerStructured Labs
KategorieCoding
VeröffentlichungsdatumFeb 2025
Zuletzt aktualisiertOct 2025
Website-BesucheN/A
Globales Website-Ranking6.6M
API-VerfügbarkeitN/A

Am besten für

Die Nutzer, Aufgaben und Szenarien, für die dieses Tool am besten passt.

Nutzer

  • Datenanalysten
  • Python-Entwickler
  • Teams, die Arbeit an andere Abteilungen übergeben
  • Datenschutzsensible Teams

Aufgaben

  • Analysten-Dashboards bauen
  • Interaktive Berichte schreiben
  • Werkzeuge zur Datenprüfung veröffentlichen
  • Offline-Kits packen

Szenarien

  • Ein Werkzeug an eine nicht technische Kollegin geben
  • Mit vertraulichen Daten arbeiten
  • Schnell ein Datenprodukt prototypen
  • Einem KI-Agenten ein strukturiertes Werkzeug geben

Wichtigste Funktionen

Autorenschaft mit Python im Mittelpunkt

Sie bauen die ganze App in Python, mit Hilfsfunktionen für Text, Tabellen, Diagramme und Formulare. Es gibt kein JavaScript zu schreiben und keine Notebook-Laufzeit, mit der man sich herumschlägt. Wer mit pandas vertraut ist, schafft den Sprung vom Analyseskript zur laufenden App schnell.

Export auf Dateibasis

Ein einziger Befehl preswald export baut die App zu einer statischen Seite in einem Ordner dist/. Das Ergebnis enthält alles zum Ausführen, Sie können es also zippen, hosten oder in ein geteiltes Laufwerk legen. In jedem modernen Browser läuft es offline.

Rechnen im Browser mit Pyodide und DuckDB

Die Laufzeit führt Python über Pyodide und die Abfragen über DuckDB aus, beide nach WebAssembly kompiliert. Die eigentliche Verarbeitung findet damit im Tab statt, nicht auf einem entfernten Server. DuckDB erledigt analytisches SQL auf lokalen Dateien schnell, und genau das macht flotte Daten-Apps im Browser möglich.

Reaktive Engine

Preswald verfolgt einen Abhängigkeitsgraphen Ihres Zustands und führt nur die Teile der App erneut aus, die eine Änderung berührt. Bewegt ein Nutzer einen Filter, berechnet die App nur die betroffenen Ausgaben neu statt des ganzen Skripts. So bleiben interaktive Apps flüssig, während sie wachsen.

Kombinierbare UI-Bausteine

Das Framework liefert fertige Elemente wie Tabellen, Diagramme, Formulare und Layout-Bausteine. Sie setzen sie in Ihr Skript ein, und sie erscheinen in einer einheitlichen Oberfläche. So ersparen Sie sich, Markup und Styling für gängige Datenansichten von Hand zu schreiben.

Lokale Ausführung als Standard

Weil die Apps vollständig im Browser laufen, gibt es kein Backend, das man bereitstellen, absichern oder bezahlen muss. Die Daten bleiben auf dem Rechner, auf dem die App läuft, was zu sensiblen Datensätzen und Offline-Feldarbeit passt. Genau diese Eigenschaft begrenzt zugleich, wie viele Daten und wie viel Rechenlast eine App stemmt.

Open Source unter Apache 2.0

Preswald steht unter der Apache-2.0-Lizenz und wird offen auf GitHub entwickelt, Sie können den Code lesen, Issues anlegen und beitragen. Das Projekt wird von Structured Labs gepflegt, mit einer aktiven Community auf Slack und in den GitHub-Diskussionen.

Vor- und Nachteile

Vorteile

  • Sie schreiben die Apps in Python, Analysten können ihre Arbeit also teilen, ohne eine Frontend-Kette zu lernen.
  • Das Ergebnis ist ein eigenständiges statisches Paket, das offline im Browser läuft, ohne Server zum Bereitstellen.
  • DuckDB und Pyodide bringen echtes SQL und echte Python-Ausführung direkt in den Browser-Tab.
  • Reaktive Neuberechnungen halten interaktive Dashboards flüssig, während sie wachsen.
  • Die Apache-2.0-Lizenz schließt Anbieterbindung aus und lässt volle Freiheit beim Selbsthosting.

Nachteile

  • Alles läuft im Client, große Datensätze und schwere Berechnungen stoßen also an die Speicher- und Geschwindigkeitsgrenzen des Rechners der Besucher.
  • Das Projekt ist jung, und die von der Community gemeldeten Fehler beim Neuzeichnen von Diagrammen zeigen, dass die Laufzeit noch reift, raue Kanten sind also möglich.
  • Es gibt keine dokumentierte Cloud-API, Teams mit Wunsch nach einem verwalteten Backend müssen sich anderswo umsehen oder selbst hosten.
  • Weil die Apps im Browser laufen, hängen sie von einem modernen Browser ab und taugen nicht für geplante oder kopflose Server-Jobs.

Häufige Fragen

Preswald baut interaktive Daten-Apps in Python und verpackt sie als statische Dateien, die im Browser laufen. Es passt zu Dashboards, Berichten, Werkzeugen zur Datenprüfung und Prototypen, die man teilen will, ohne jemandem eine Python-Umgebung abzuverlangen.