Postgres.new - Postgres im Browser mit AI-Oberfläche
(supabase.com)- Eine Postgres-Sandbox, die direkt im Browser läuft und AI-Unterstützung bietet
- Unbegrenzt viele Postgres-Datenbanken können sofort erstellt werden (bald auch mit Deployment auf S3)
- Jede Datenbank wird mit einem Large Language Model (LLM) gepaart und ermöglicht verschiedene interessante Anwendungsfälle:
- Tabellen per Drag-and-drop von CSV-Dateien erstellen
- Berichte erstellen und exportieren
- Diagramme erzeugen
- Datenbankdiagramme erstellen
- Alle Vorgänge werden lokal im Browser ausgeführt
Demo der Nutzung
- Wenn man CSV-Dateien schnell abfragen und visualisieren möchte
- Wenn man mit ChatGPT SQL schreiben und es an einer echten Datenbank ausführen möchte
- Wenn man ein neues Projekt planen und das Datenbankdesign einer AI überlassen möchte
Funktionsweise
- Alle Abfragen werden im Browser ausgeführt
- Möglich wird das durch PGlite, eine WASM-Version von Postgres, die direkt im Browser läuft
Motivation für die Entwicklung
- AI-gestützte Entwicklung: Das Zusammenspiel von Postgres und AI neu gedacht
- Postgres-Sandboxing: Schnell und flüchtig im Browser ausführbar
- Günstige Datenbanken: Potenzial, viele Datenbanken zu niedrigen Kosten bereitzustellen
Funktionen und Arbeitsweise
AI-Assistent
- PGlite wird mit GPT-4o gepaart und erhält vollständige Berechtigungen für die Datenbank.
- Die AI kann mehrere Aufgaben nacheinander ausführen, was sich menschlicher anfühlt.
CSV-Import und -Export
- CSV-Dateien per Drag-and-drop importieren und automatisch Tabellen erstellen.
- Die AI analysiert Header und Beispielzeilen der CSV, um Datentypen zu bestimmen.
- Wenn SQL-Fehler auftreten, versucht die AI, diese selbstständig zu korrigieren.
Diagramme
- Wenn das Wort "chart" zur Nachricht hinzugefügt wird, führt die AI die passende Abfrage aus und erzeugt ein Diagramm.
- Diagramme werden mit Chart.js gerendert.
ER-Diagramme und Migrationen
- Die AI erstellt
CREATE- undALTER-Statements und erzeugt daraus ER-Diagramme aus der echten Datenbank. - Mit einer browserkompatiblen Version von postgres-meta werden PGlite-Tabellen in JavaScript geladen und mit einem Schema-Visualisierungstool gerendert.
Semantische Suche und RAG
- Mit der Erweiterung pgvector wird Vektorsuche im Browser unterstützt.
- Mit Transformers.js werden Text-Embeddings erzeugt, in PGlite gespeichert und abgefragt.
Deployment
- Geplant ist, PGlite-Datenbanken auf S3 zu deployen, um vielfältige Anwendungsfälle kostengünstig zu unterstützen.
PGlite im Detail
Was ist PGlite?
- PGlite ist ein WASM-Build von Postgres und kann im Browser, in Node.js und Bun ausgeführt werden.
- Ideal für Unit-Tests, lokale Entwicklung und Remote-Entwicklung.
Datenpersistenz
- Unter Node wird das native Dateisystem unterstützt, im Browser IndexedDB und OPFS.
Erweiterungsunterstützung
- Unterstützt nützliche Erweiterungen wie
pgvectorundlive.
Technischer Überblick
- Basiert auf dem Single-User-Modus von Postgres, damit es in WASM ausgeführt werden kann.
- Verschiedene Postgres-Funktionen wurden für WASM angepasst.
Demnächst verfügbar
- Datenbanken sollen auf S3 deployt und über das Internet erreichbar gemacht werden.
- Unterstützung für mehr Dateiformate, Datenbankfreigabe und Datenbankexport sind ebenfalls geplant.
Open Source
- Alle Arbeiten werden als Open Source bereitgestellt:
- PGlite (Apache 2.0)
- pg-gateway (MIT)
- postgres-new (Apache 2.0)
- transformers.js
Zusammenfassung von GN⁺
- postgres.new ist eine im Browser laufende Postgres-Sandbox, mit der sich Datenbankaufgaben dank AI-Unterstützung einfach erledigen lassen.
- Mit PGlite lassen sich schnell und kostengünstig Datenbanken erstellen, ergänzt durch verschiedene AI-basierte Funktionen.
- Datenvisualisierung, ER-Diagramme, semantische Suche und weitere Funktionen machen das Tool für Entwickler nützlich.
- Ähnliche Projekte mit vergleichbaren Funktionen sind unter anderem Supabase und ElectricSQL.
3 Kommentare
Es war also supabase.
PGLite – Postgres im Browser ausführen
Hacker-News-Kommentare
Jemand teilt die Erfahrung, mit postgres.new drei Datenbanken erstellt zu haben
Es wird als Tech-Demo bewertet, die die Grenzen von AI zeigt
Beim Klick auf den Button "New database" passiert nichts
Sehr beeindruckend
Es wird angemerkt, dass eine Nutzung ohne AI-Funktionen wünschenswert wäre
Das Tool wird als große Hilfe für das Datenbankdesign bewertet
Gegenüber der Kombination von AI/LLM mit bestehenden Workflows bestand Skepsis, aber in diesem Fall wird es als in Ordnung bewertet
Ein Supabase-Ingenieur erwähnt, dass es Spaß gemacht habe, dieses Tool gemeinsam mit dem Electric-Team zu entwickeln
Es wird darauf hingewiesen, postgres.new auf einem Laptop oder Desktop zu verwenden