bun Documentation

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one

95,393 stars Rust Rust 1 file · ~6,454 tokens #bun#bundler#javascript#javascriptcore#jsx#nodejs#npm#react
RAW Doc

Docker & Self-Hosted Deployment Verified OCI

Deploy bun on any server, homelab, or cloud container platform.

1-Click Terminal Command
bash (docker run)
docker run -d --name bun --restart always oven-sh/bun:latest

File: README.md

Bun

[Read the docs →](https://bun.com/docs)

What is Bun?

Bun is an all-in-one toolkit for JavaScript and TypeScript apps. It ships as a single executable called bun.

At its core is the Bun runtime, a fast JavaScript runtime designed as a drop-in replacement for Node.js. It's written in Rust and powered by JavaScriptCore under the hood, dramatically reducing startup times and memory usage.

bash
bun run index.tsx             # TS and JSX supported out-of-the-box

The bun command-line tool also implements a test runner, script runner, and Node.js-compatible package manager. Instead of 1,000 node_modules for development, you only need bun. Bun's built-in tools are significantly faster than existing options and usable in existing Node.js projects with little to no changes.

bash
bun test                      # run tests
bun run start                 # run the `start` script in `package.json`
bun install              # install a package
bunx cowsay 'Hello, world!'   # execute a package

Install

Bun supports Linux (x64 & arm64), macOS (x64 & Apple Silicon), and Windows (x64 & arm64).

Linux users — Kernel version 5.6 or higher is strongly recommended, but the minimum is 5.1.

x64 users — if you see "illegal instruction" or similar errors, check our CPU requirements

sh
# with install script (recommended)
curl -fsSL https://bun.com/install | bash

# on windows
powershell -c "irm bun.sh/install.ps1 | iex"

# with npm
npm install bun

# with Homebrew
brew tap oven-sh/bun
brew install bun

# with Docker
docker pull oven/bun
docker run --rm --init --ulimit memlock=-1:-1 oven/bun

Upgrade

To upgrade to the latest version of Bun, run:

sh
bun upgrade

Bun automatically releases a canary build on every commit to main. To upgrade to the latest canary build, run:

sh
bun upgrade --canary

View canary build

Guides

Contributing

Refer to the Project > Contributing guide to start contributing to Bun.

License

Refer to the Project > License page for information about Bun's licensing.


File: docs/README.md

Bun Documentation

Official documentation for Bun: the fast, all-in-one JavaScript runtime. bun.com/docs is built from the files in this directory.

Contributing

Contributions are welcome. Open an issue or submit a pull request.

Before writing or editing a page, read the voice guidelines (source: project/contributing.mdx): short sentences, active voice, present tense, second person, and no "easy", "simple", or "just".