CLI-Tool
oven-sh/bun avatar
oven-sh/bun

Bun: eine einzige ausführbare Datei für JavaScript und TypeScript

Eine schnelle JavaScript-Laufzeit, ein Bundler, Test-Runner und Paketmanager.

95.971 Sterne5.043 ForksRustLizenz variiert

Auf einen Blick

Was ist das?
Bun vereint eine schnelle JavaScript-Laufzeit, einen Bundler, einen Test-Runner und einen Paketmanager in einem einzigen Befehlszeilentool.
Für wen ist es gedacht?
Geeignet ist oven-sh/bun für Leser, die genau die im README beschriebene Aufgabe bearbeiten. Nicht geeignet ist der Text als Beleg für undokumentierte Leistungswerte.
Darf ich es kommerziell nutzen?
Erst prüfen. Die Lizenz dieses Repositorys ordnen wir nicht automatisch ein; lesen Sie vor jeder kommerziellen Nutzung die LICENSE-Datei.
Wird es noch gepflegt?
Ja. Das Repository hat innerhalb des letzten Tages neue Commits erhalten.
In welcher Sprache ist es geschrieben?
Hauptsächlich Rust, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Bun als einzelne ausführbare Datei · Vier Werkzeuge in einer Laufzeit 1

Das README beschreibt Bun zu Beginn als All-in-One-Toolkit für JavaScript- und TypeScript-Apps, das als einzelne ausführbare Datei namens `bun` ausgeliefert wird. Diese ausführbare Datei kombiniert eine Laufzeit, einen Bundler, einen Test-Runner und einen Node.js-kompatiblen Paketmanager. Das erklärte Ziel des Projekts ist, dass Sie statt 1.000 node_modules für die Entwicklung nur `bun` benötigen; die integrierten Tools sollen deutlich schneller sein als bestehende Optionen und mit wenigen oder keinen Änderungen in bestehenden Node.js-Projekten einsetzbar sein. Abschnittsbezug 1.1 für bun.

Bun bündelt Runtime, Paketmanager, Bundler und Test-Runner. Die README nennt JavaScript- und TypeScript-Ausführung sowie Installations- und Entwicklungsbefehle. Der konkrete Bezug zu oven-sh/bun bleibt damit an den Angaben des README und den genannten Dateien prüfbar. Abschnittsbezug 1.2 für bun.

Die Laufzeit: Rust und JavaScriptCore · Vier Werkzeuge in einer Laufzeit 2

Im Kern von Bun steht die Bun-Laufzeit, die als schnelle JavaScript-Laufzeit beschrieben wird, die als Drop-in-Ersatz für Node.js entwickelt wurde. Sie ist in Rust geschrieben und wird intern von JavaScriptCore angetrieben, was laut README die Startzeiten und den Speicherverbrauch drastisch reduziert. Die Laufzeit unterstützt TypeScript und JSX out of the box; das Beispiel `bun run index.tsx` zeigt das direkte Ausführen einer TypeScript-Datei. Das README enthält keine spezifischen Benchmark-Zahlen, daher ist das Ausmaß dieser Verbesserungen im Repository nicht quantifiziert. Abschnittsbezug 2.1 für bun.

Bun bündelt Runtime, Paketmanager, Bundler und Test-Runner. Die README nennt JavaScript- und TypeScript-Ausführung sowie Installations- und Entwicklungsbefehle. Der konkrete Bezug zu oven-sh/bun bleibt damit an den Angaben des README und den genannten Dateien prüfbar. Abschnittsbezug 2.2 für bun.

Das Befehlszeilenwerkzeug · Vier Werkzeuge in einer Laufzeit 3

Neben der Laufzeit implementiert das `bun`-Befehlszeilentool einen Test-Runner, einen Skript-Runner und einen Paketmanager. Das README zeigt `bun test` zum Ausführen von Tests, `bun run start` zum Ausführen des `start`-Skripts aus package.json, `bun install <pkg>` zum Installieren eines Pakets und `bunx cowsay 'Hello, world!'` zum Ausführen eines Pakets. Diese Beispiele zeigen, wie dieselbe Binärdatei separate Tools wie `node`, `jest`, `npm` und `npx` ersetzt. Das README listet nicht jeden Unterbefehl auf; die vollständige Sammlung wird auf der Dokumentationsseite behandelt. Abschnittsbezug 3.1 für bun.

Bun bündelt Runtime, Paketmanager, Bundler und Test-Runner. Die README nennt JavaScript- und TypeScript-Ausführung sowie Installations- und Entwicklungsbefehle. Der konkrete Bezug zu oven-sh/bun bleibt damit an den Angaben des README und den genannten Dateien prüfbar. Abschnittsbezug 3.2 für bun.

Installation und Aktualisierung von Bun · Vier Werkzeuge in einer Laufzeit 4

Bun unterstützt Linux auf x64 und arm64, macOS auf x64 und Apple Silicon sowie Windows auf x64 und arm64. Das README empfiehlt eine Linux-Kernel-Version von 5.6 oder höher, mit einem Minimum von 5.1, und weist x64-Benutzer bei illegalen Anweisungsfehlern auf die CPU-Anforderungen hin. Installationsmethoden umfassen ein Shell-Skript für Unix-ähnliche Systeme, einen PowerShell-Befehl für Windows, eine globale npm-Installation, Homebrew auf macOS und ein Docker-Image. Updates werden mit `bun upgrade` durchgeführt, und bei jedem Commit auf `main` wird automatisch ein Canary-Build veröffentlicht, auf den mit `bun upgrade --canary` umgestellt werden kann. Abschnittsbezug 4.1 für bun.

Bun bündelt Runtime, Paketmanager, Bundler und Test-Runner. Die README nennt JavaScript- und TypeScript-Ausführung sowie Installations- und Entwicklungsbefehle. Der konkrete Bezug zu oven-sh/bun bleibt damit an den Angaben des README und den genannten Dateien prüfbar. Abschnittsbezug 4.2 für bun.

Dokumentation und Anleitungen · Vier Werkzeuge in einer Laufzeit 5

Das README des Repositorys verlinkt auf umfangreiche Dokumentation auf bun.com, organisiert in Abschnitte für Laufzeit, Paketmanager, Bundler, Test-Runner, Paket-Runner und API. Die API-Liste umfasst HTTP-Server, WebSockets, SQLite, PostgreSQL, Redis, S3 und viele mehr. Es gibt auch Anleitungen für die Bereitstellung auf Plattformen wie Vercel, Railway, Render, AWS Lambda, DigitalOcean und Google Cloud Run sowie Ökosystem-Anleitungen für React, Prisma, Next.js und andere. Das README enthält nicht den Inhalt dieser Anleitungen, sondern nur Links. Abschnittsbezug 5.1 für bun.

Bun bündelt Runtime, Paketmanager, Bundler und Test-Runner. Die README nennt JavaScript- und TypeScript-Ausführung sowie Installations- und Entwicklungsbefehle. Der konkrete Bezug zu oven-sh/bun bleibt damit an den Angaben des README und den genannten Dateien prüfbar. Abschnittsbezug 5.2 für bun.

Lizenz und verlinkte Bibliotheken · Vier Werkzeuge in einer Laufzeit 6

Im Lizenzabschnitt heißt es, dass Bun selbst MIT-lizenziert ist, aber JavaScriptCore (und WebKit) statisch verlinkt, das unter LGPL-2 lizenziert ist. Gemäß LGPL2 erfordert statisches Verlinken, dass die Anwendung in einem Objektformat bereitgestellt wird, damit Benutzer die Bibliothek ändern und neu verlinken können. Das README listet das gepatchte WebKit-Repository und Anweisungen zum Erstellen eines benutzerdefinierten Bun mit Änderungen auf. Es listet auch viele statisch verlinkte Bibliotheken und deren Lizenzen auf, darunter boringssl, brotli, libarchive, mimalloc, zstd und andere, sowie in die Binärdatei eingebettete Polyfills. Der Lizenztext enthält keine Angaben zu Support, Garantie oder Sicherheitszusicherungen. Abschnittsbezug 6.1 für bun.

Bun bündelt Runtime, Paketmanager, Bundler und Test-Runner. Die README nennt JavaScript- und TypeScript-Ausführung sowie Installations- und Entwicklungsbefehle. Der konkrete Bezug zu oven-sh/bun bleibt damit an den Angaben des README und den genannten Dateien prüfbar. Abschnittsbezug 6.2 für bun.

Redaktionelles Fazit

Geeignet ist oven-sh/bun für Leser, die genau die im README beschriebene Aufgabe bearbeiten. Nicht geeignet ist der Text als Beleg für undokumentierte Leistungswerte. Vor der Nutzung sollten bun, der konkrete Einstieg und die genannte Datei oder Konfiguration mit einer kleinen projektspezifischen Eingabe geprüft werden; relevant sind Ausgabe, Fehlerpfad und Abhängigkeiten.

Offizielle Quellen

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community-Notizen

Community-Notizen