oven-sh

    oven-sh/bun

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

    backend
    frontend
    bun
    bundler
    javascript
    javascriptcore
    jsx
    nodejs
    npm
    react
    transpiler
    typescript
    zig
    ziglang
    Zig
    NOASSERTION
    85.8K stars
    3.9K forks
    85.8K watching
    Updated 2/27/2026
    View on GitHub
    Backblaze Advertisement

    Loading star history...

    Health Score

    75

    Weekly Growth

    +0

    +0.0% this week

    Contributors

    1

    Total contributors

    Open Issues

    5.6K

    Generated Insights

    About bun

    Logo

    Bun

    stars Bun speed

    Documentation   •   Discord   •   Issues   •   Roadmap

    Read the 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 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.

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

    # with install script (recommended)
    curl -fsSL https://bun.com/install | bash
    
    # on windows
    powershell -c "irm bun.com/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

    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.

    Discover Repositories

    Search across tracked repositories by name or description