Skip to main content
Add a dependency to package.json and install it.

Behavior

bun add adds the specified package(s) to package.json and installs them. By default, packages are added to dependencies.

Arguments

Package name

Package with version

Package with tag

Package with version range

Multiple packages

Scoped packages

Git repositories

Git with branch/tag/commit

Local packages (file:)

Tarball URLs

Flags

--dev (-d, -D)

Add as a dev dependency.
Adds to devDependencies in package.json:

--optional (-o, -O)

Add as an optional dependency.
Adds to optionalDependencies in package.json:

--peer (-p, -P)

Add as a peer dependency.
Adds to peerDependencies in package.json:

--exact (-E)

Install exact version instead of version range.
Uses exact version in package.json:

--global (-g)

Install package globally.

--no-save

Install package without adding to package.json.

--ignore-scripts

Skip running lifecycle scripts.

--trust

Automatically trust packages with scripts.

--dry-run

Simulate adding packages without actually installing.

--cwd <path>

Run command in specified directory.

--backend <backend>

Specify installation backend (hardlink, clonefile, copyfile, symlink).

Examples

Add a production dependency

Add multiple dev dependencies

Add with exact version

Add from GitHub

Add local package

Registry aliases

You can add packages with aliases:
This adds an aliased dependency:
Import using the alias: