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

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

46fd753 · Jan 7, 2025
Dec 19, 2024
Nov 28, 2024
Jan 4, 2025
Jan 3, 2025
Nov 16, 2024
Jan 4, 2025
Dec 6, 2024
Nov 19, 2024
Jan 6, 2025
Aug 26, 2023
Dec 29, 2024
Jan 4, 2025
Oct 3, 2024
Dec 27, 2024
Jan 7, 2025
Jan 7, 2025
Sep 11, 2024
Dec 14, 2024
Dec 26, 2024
Dec 12, 2024
Aug 28, 2023
Oct 27, 2024
Dec 10, 2024
Dec 31, 2024
Dec 4, 2024
Apr 10, 2024
Oct 4, 2024
Sep 4, 2022
Jan 4, 2025
Jan 3, 2025
Jul 24, 2024
Oct 1, 2024
Nov 4, 2024
Sep 12, 2023
Dec 17, 2024
Dec 10, 2024
Feb 21, 2024
Dec 14, 2024
Oct 28, 2021
Sep 12, 2024
Jan 3, 2025
Oct 8, 2024
Oct 8, 2024
Dec 10, 2024
Dec 10, 2024
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.