Runtime
Bundler
Package Manager
Test Runner
Guides
Reference
Blog
Install Bun
Package Manager Advanced Configuration

Scopes and registries

Configure private registries and scoped packages

The default registry is registry.npmjs.org. This can be globally configured in bunfig.toml:

bunfig.toml
[install]
# set default registry as a string
registry = "https://registry.npmjs.org"
# set a token
registry = { url = "https://registry.npmjs.org", token = "123456" }
# set a username/password
registry = "https://username:password@registry.npmjs.org"

To configure a private registry scoped to a particular organization:

bunfig.toml
[install.scopes]
# registry as string
"@myorg1" = "https://username:password@registry.myorg.com/"

# registry with username/password
# you can reference environment variables
"@myorg2" = { username = "myusername", password = "$NPM_PASS", url = "https://registry.myorg.com/" }

# registry with token
"@myorg3" = { token = "$npm_token", url = "https://registry.myorg.com/" }

.npmrc

Bun also reads .npmrc files, learn more.

On this page