Skip to content
/ bun Public

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

License

Notifications You must be signed in to change notification settings

oven-sh/bun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

267afa2 · Sep 7, 2024
Aug 25, 2024
Jul 28, 2022
Sep 7, 2024
Sep 7, 2024
Sep 4, 2024
Aug 24, 2024
Apr 4, 2024
Sep 6, 2024
Aug 26, 2023
Jul 23, 2024
Sep 7, 2024
Sep 7, 2024
Sep 7, 2024
Sep 7, 2024
Apr 12, 2024
Oct 27, 2023
Aug 28, 2023
Sep 6, 2024
Jul 23, 2024
Jul 24, 2024
Jul 31, 2024
Sep 4, 2024
Apr 10, 2024
Sep 4, 2024
Sep 7, 2024
Sep 4, 2022
Sep 1, 2024
Aug 2, 2024
Aug 24, 2024
Jul 24, 2024
Sep 1, 2024
Sep 2, 2024
Sep 12, 2023
Aug 31, 2024
Sep 4, 2024
Feb 21, 2024
Feb 18, 2022
Oct 28, 2021
Sep 4, 2024
Sep 7, 2024
Jan 22, 2024
Aug 8, 2023
Dec 18, 2023
Dec 18, 2023
Aug 11, 2021

Repository files navigation

Logo

Bun

stars Bun speed

Documentation   •   Discord   •   Issues   •   Roadmap

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 Zig and powered by JavaScriptCore under the hood, dramatically reducing startup times and memory usage.

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.

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

Install

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

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

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

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

# with npm
npm install -g 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:

bun upgrade

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

bun upgrade --canary

View canary build

Quick links

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.