Skip to Content
DocsNode.jsMigrate from pnpm to Bun

Migrate from pnpm to Bun

Bun is a fast all-in-one JavaScript runtime and package manager. Migrating from pnpm to Bun is straightforward and can significantly speed up your development workflow.

Why Migrate to Bun?

  • Extreme Speed: Bun’s package manager is up to 25x faster than npm and significantly faster than pnpm.
  • Built-in Tools: Bun includes a native bundler, test runner, and support for .ts and .tsx files out of the box.
  • Node.js Compatibility: Bun aims for high compatibility with the Node.js ecosystem.

Migration Steps

1. Update Scripts

If you have scripts that explicitly use pnpm, update them to use bun. For example, in an auto/run script:

# Before npx pnpm dev # After bun dev

2. Remove pnpm Lockfile

Delete the pnpm-lock.yaml file and the node_modules directory to ensure a clean start.

rm pnpm-lock.yaml rm -rf node_modules

3. Install with Bun

Run bun install to download dependencies and generate a bun.lock file.

bun install

4. Update Git Hooks

If you use Husky, ensure your hooks use bunx instead of pnpx or npx.

# .husky/pre-commit bunx lint-staged

Summary

Migrating to Bun is mainly about replacing the pnpm command with bun and letting Bun handle the dependency resolution. The performance gains are usually immediate and noticeable.

Last updated on