import Add from "/snippets/cli/add.mdx";
Pour ajouter un package particulier :
bun add preactPour spécifier une version, une plage de versions ou un tag :
bun add zod@3.20.0
bun add zod@^3.0.0
bun add zod@latest--dev
NOTE
**Alias** — `--development`, `-d`, `-D`Pour ajouter un package comme dépendance de développement ("devDependencies") :
bun add --dev @types/react
bun add -d @types/react--optional
Pour ajouter un package comme dépendance optionnelle ("optionalDependencies") :
bun add --optional lodash--peer
Pour ajouter un package comme dépendance peer ("peerDependencies") :
bun add --peer @types/bun--exact
NOTE
**Alias** — `-E`Pour ajouter un package et le fixer à la version résolue, utilisez --exact. Cela résoudra la version du package et l'ajoutera à votre package.json avec un numéro de version exact au lieu d'une plage de versions.
bun add react --exact
bun add react -ECeci ajoutera ce qui suit à votre package.json :
{
"dependencies": {
// sans --exact
"react": "^18.2.0", // cela correspond à >= 18.2.0 < 19.0.0
// avec --exact
"react": "18.2.0" // cela correspond uniquement à 18.2.0 exactement
}
}Pour afficher une liste complète des options pour cette commande :
bun add --help--global
NOTE
**Note** — Cela ne modifierait pas le package.json de votre dossier de projet actuel. **Alias** - `bun add --global`, `bun add -g`, `bun install --global` et `bun install -g`Pour installer un package globalement, utilisez le drapeau -g/--global. Cela ne modifiera pas le package.json de votre projet actuel. Généralement, cela est utilisé pour installer des outils en ligne de commande.
bun add --global cowsay # ou `bun add -g cowsay`
cowsay "Bun!" ______
< Bun! >
------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||Configuration du comportement d'installation globale
[install]
# où `bun add --global` installe les packages
globalDir = "~/.bun/install/global"
# où les binaires de packages installés globalement sont liés
globalBinDir = "~/.bun/bin"Dépendances de confiance
Contrairement à d'autres clients npm, Bun n'exécute pas de scripts de cycle de vie arbitraires pour les dépendances installées, tels que postinstall. Ces scripts représentent un risque de sécurité potentiel, car ils peuvent exécuter du code arbitraire sur votre machine.
Pour dire à Bun d'autoriser les scripts de cycle de vie pour un package particulier, ajoutez le package à trustedDependencies dans votre package.json.
{
"name": "my-app",
"version": "1.0.0",
"trustedDependencies": ["my-trusted-package"]
}Bun lit ce champ et exécutera les scripts de cycle de vie pour my-trusted-package.
Dépendances git
Pour ajouter une dépendance depuis un dépôt git public ou privé :
bun add git@github.com:moment/moment.gitNOTE
Pour installer des dépôts privés, votre système a besoin des identifiants SSH appropriés pour accéder au dépôt.Bun prend en charge une variété de protocoles, y compris github, git, git+ssh, git+https, et bien d'autres.
{
"dependencies": {
"dayjs": "git+https://github.com/iamkun/dayjs.git",
"lodash": "git+ssh://github.com/lodash/lodash.git#4.17.21",
"moment": "git@github.com:moment/moment.git",
"zod": "github:colinhacks/zod"
}
}Dépendances tarball
Un nom de package peut correspondre à un fichier .tgz hébergé publiquement. Pendant l'installation, Bun téléchargera et installera le package depuis l'URL du tarball spécifiée, plutôt que depuis le registre de packages.
bun add zod@https://registry.npmjs.org/zod/-/zod-3.21.4.tgzCeci ajoutera la ligne suivante à votre package.json :
{
"dependencies": {
"zod": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz"
}
}