diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index 6470d4f..511fbf2 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -1,55 +1,55 @@
-# Docs Translation Contributing Guide
+# Guide de contribution à la traduction de la documentation
-This repo is a template for [Vite.js docs translation repositories](https://github.com/vitejs?q=docs).
+Ce dépôt est un template pour les [dépôts de traduction de la documentation Vite.js](https://github.com/vitejs?q=docs).
-## Creating a Translation Repo
+## Création d'un dépôt de traduction
-1. Click [*Use this template*](https://github.com/tony19/vite-docs-template/generate) to scaffold a new translation repo in your personal GitHub.
+1. Cliquez sur [*Utiliser ce template*](https://github.com/tony19/vite-docs-template/generate) pour créer un nouveau dépôt de traduction dans votre compte GitHub personnel.
-2. Configure workflow permissions (required):
+2. Configurez les permissions de workflow (requis) :
- - Go to your repository's "Settings" > "Actions" > "General" > "Workflow permissions"
- - Select "Read and write permissions"
- - Click "Save"
+ - Allez dans les "Settings" > "Actions" > "General" > "Workflow permissions" de votre dépôt
+ - Sélectionnez "Read and write permissions"
+ - Cliquez sur "Save"
- This is a standard requirement for any GitHub Actions that need to create issues or make repository changes. Without these permissions, the action will fail with a `403 "Resource not accessible by integration"` error when trying to create issues or manage labels.
+ Il s'agit d'un prérequis standard pour toutes Action GitHub qui doivent créer des tickets ou apporter des modifications au dépôt. Sans ces permissions, l'action échouera avec une erreur `403 "Resource not accessible by integration"` lors de la création de tickets ou de la gestion des labels.
-3. This repo uses the [`yuki-no` GitHub Action](https://github.com/Gumball12/yuki-no) to keep it in sync with changes from [Vite's `docs`](https://github.com/vitejs/vite/tree/main/docs). It creates issues in this repo to track upstream changes that need to be translated.
+3. Ce dépôt utilise l'[Action GitHub `yuki-no`](https://github.com/Gumball12/yuki-no) pour le maintenir synchronisé avec les changements de la [documentation de Vite](https://github.com/vitejs/vite/tree/main/docs). Elle crée des issues dans ce dépôt pour suivre les modifications en amont qui doivent être traduites.
- You must configure the following field in [`/.github/workflows/yuki-no.yml`](/.github/workflows/yuki-no.yml):
+ Vous devez configurer le champ suivant dans [`/.github/workflows/yuki-no.yml`](/.github/workflows/yuki-no.yml) :
- * `track-from`: Set this to a recent commit hash from the head repository (vitejs/vite). This is the starting point for tracking changes - Yuki-no will only track commits after this hash. Using an old commit hash will significantly slow down the initial action run as it needs to process each historical commit. (After the first successful run, Yuki-no automatically skips previously processed commits.)
+ * `track-from` : définissez-le sur un hash de commit récent du dépôt principal (vitejs/vite). C'est le point de départ pour suivre les changements - Yuki-no ne suivra que les commits après ce hash. L'utilisation d'un ancien hash de commit ralentira considérablement l'exécution initiale de l'action, car elle devra traiter chaque commit historique. Après la première exécution réussie, Yuki-no ignore automatiquement les commits déjà traités.
- By default, `yuki-no` uses the `github-actions` bot. If you want to use a custom bot:
+ Par défaut, `yuki-no` utilise le bot `github-actions`. Si vous souhaitez utiliser un bot personnalisé :
- * `username` - the GitHub username of a [machine user](https://docs.github.com/en/developers/overview/managing-deploy-keys#machine-users) (e.g., `ci-bot`)
- * `email` - the email associated with the GitHub username above
- * `access-token` - a [personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) of the machine user (stored in a [repository secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository), enabling `access-token: ${{ secrets.MY_SECRET_TOKEN }}`)
+ * `username` - le nom d'utilisateur GitHub d'un [utilisateur machine](https://docs.github.com/en/developers/overview/managing-deploy-keys#machine-users) (par exemple, `ci-bot`)
+ * `email` - l'e-mail associé au nom d'utilisateur GitHub ci-dessus
+ * `access-token` - un [jeton d'accès personnel](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) de l'utilisateur machine (stocké dans un [secret de dépôt](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository), permettant `access-token: ${{ secrets.MY_SECRET_TOKEN }}`)
- For more configuration options, see the [`yuki-no` documentation](https://github.com/Gumball12/yuki-no).
+ Pour plus d'options de configuration, consultez la [documentation de `yuki-no`](https://github.com/Gumball12/yuki-no).
-4. Translate all user-visible strings (unless specified otherwise) in the following files to the target language:
+4. Traduisez toutes les chaînes visibles par l'utilisateur (sauf indication contraire) dans les fichiers suivants vers la langue cible :
- * [`/docs/.vitepress/config.ts`](/docs/.vitepress/config.ts) (the `og*`, `footer.*`, `text`, and `link` fields)
+ * [`/docs/.vitepress/config.ts`](/docs/.vitepress/config.ts) (les champs `og*`, `footer.*`, `text` et `link`)
* [`/docs/.vitepress/theme/components/HomeSponsors.vue`](/docs/.vitepress/theme/components/HomeSponsors.vue)
- * [`/docs/.vitepress/theme/composables/sponsor.ts`](https://github.com/tony19/vite-docs-template/blob/acea14e/docs/.vitepress/theme/composables/sponsor.ts#L44) (the `tier` fields)
- * [`/docs/_data/team.js`](/docs/_data/team.js) (the `title` and `desc` fields)
+ * [`/docs/.vitepress/theme/composables/sponsor.ts`](https://github.com/tony19/vite-docs-template/blob/acea14e/docs/.vitepress/theme/composables/sponsor.ts#L44) (les champs `tier`)
+ * [`/docs/_data/team.js`](/docs/_data/team.js) (les champs `title` et `desc`)
* `/docs/**/*.md`
* [`/CONTRIBUTING.md`](/CONTRIBUTING.md)
* [`/README.md`](/README.md)
* `/docs/images/*.svg`
- 💡 *Tips:*
+ 💡 *Tips :*
- * *Ping the [`#docs` channel](https://discord.com/channels/804011606160703521/855049073157341234) in [Discord](https://chat.vitejs.dev) or [GitHub Discussions](https://github.com/vitejs/vite/discussions/categories/general) for others who can help with translations.*
- * *Submit pull requests in your repo for this work so that collaborators can proofread the translations.*
+ * *Contactez le [canal `#docs`](https://discord.com/channels/804011606160703521/855049073157341234) sur [Discord](https://chat.vitejs.dev) ou les [Discussions GitHub](https://github.com/vitejs/vite/discussions/categories/general) pour trouver d'autres personnes qui peuvent aider aux traductions.*
+ * *Soumettez des pull requests dans votre dépôt pour ce travail afin que les collaborateurs puissent relire les traductions.*
-5. Create a [pull request in Vite's main repo](https://github.com/vitejs/vite/pulls) to update the [locale links in `docs/.vitepress/config.ts`](https://github.com/vitejs/vite/blob/1e078ad1902ae980741d6920fc3a72d182fcf179/docs/.vitepress/config.ts#L55-L62), which would add the new language to the dropdown on the Vite homepage. Specifically, append to `localeLinks.items[]` an object with these keys:
+5. Créez une [pull request dans le dépôt principal de Vite](https://github.com/vitejs/vite/pulls) pour mettre à jour les [liens de localisation dans `docs/.vitepress/config.ts`](https://github.com/vitejs/vite/blob/1e078ad1902ae980741d6920fc3a72d182fcf179/docs/.vitepress/config.ts#L55-L62), ce qui ajouterait la nouvelle langue au menu déroulant sur la page d'accueil de Vite. Plus précisément, ajoutez à `localeLinks.items[]` un objet avec ces clés :
- - `text` - the language name in its native spelling (e.g., `Español`)
- - `link` - the URL to the target site, composed of the language's [ISO 639-1 code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) as a subdomain of `https://vitejs.dev` (e.g., `https://es.vitejs.dev`)
+ - `text` - le nom de la langue dans son orthographe native (par exemple, `Español`)
+ - `link` - l'URL du site cible, composée du [code ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) de la langue comme sous-domaine de `https://vitejs.dev` (par exemple, `https://es.vitejs.dev`)
- *Example for French:*
+ *Exemple pour le français :*
```js
localeLinks: {
@@ -59,6 +59,6 @@ This repo is a template for [Vite.js docs translation repositories](https://gith
},
```
-6. In the pull request's description, include the URL to your translation repo. Be prepared to [transfer the repo](https://docs.github.com/en/repositories/creating-and-managing-repositories/transferring-a-repository) to the [`vitejs` organization](https://github.com/vitejs) upon request by the [Vite team](https://github.com/orgs/vitejs/people). The transfer automatically adds you as a collaborator on the repo. The repo will be renamed to `docs-LANGUAGE_CODE` (e.g., `docs-fr`) after the transfer.
+6. Dans la description de la pull request, incluez l'URL de votre dépôt de traduction. Soyez prêt à [transférer le dépôt](https://docs.github.com/en/repositories/creating-and-managing-repositories/transferring-a-repository) à l'[organisation `vitejs`](https://github.com/vitejs) à la demande de l'[équipe Vite](https://github.com/orgs/vitejs/people). Le transfert vous ajoute automatiquement en tant que collaborateur sur le dépôt. Le dépôt sera renommé en `docs-CODE_DE_LANGUE` (par exemple, `docs-fr`) après le transfert.
- **Thank you for your contribution!** ❤️
+ **Merci pour votre contribution !** ❤️
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index f00edd9..22ed96a 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,69 +1,69 @@
-# Vite Contributing Guide
+# Guide de contribution à Vite
-Hi! We're really excited that you're interested in contributing to Vite! Before submitting your contribution, please read through the following guide. We also suggest you read the [Project Philosophy](https://vitejs.dev/guide/philosophy) in our documentation.
+Nous sommes très heureux que vous souhaitiez contribuer à Vite ! Avant de soumettre votre contribution, veuillez lire le guide suivant. Nous vous suggérons également de lire la [Philosophie du projet](https://vitejs.dev/guide/philosophy) dans notre documentation.
-You can use [StackBlitz Codeflow](https://stackblitz.com/codeflow) to fix bugs or implement features. You'll see a Codeflow button on issues to start a PR to fix them. A button will also appear on PRs to review them without needing to check out the branch locally. When using Codeflow, the Vite repository will be cloned for you in an online editor, with the Vite package built in watch mode ready to test your changes. If you'd like to learn more, check out the [Codeflow docs](https://developer.stackblitz.com/codeflow/what-is-codeflow).
+Vous pouvez utiliser [StackBlitz Codeflow](https://stackblitz.com/codeflow) pour corriger les bugs ou implémenter des fonctionnalités. Vous verrez un bouton Codeflow sur les bugs pour commencer une PR pour les corriger. Un bouton apparaîtra également sur les PR pour les revoir sans avoir besoin de vérifier la branche localement. Lorsque vous utilisez Codeflow, le dépôt Vite sera cloné pour vous dans un éditeur en ligne, avec le package Vite construit en mode observateur (watch) prêt à tester vos modifications. Si vous souhaitez en savoir plus, consultez la [documentation Codeflow](https://developer.stackblitz.com/codeflow/what-is-codeflow).
-[](https://pr.new/vitejs/vite)
+[](https://pr.new/vitejs/vite)
-## Repo Setup
+## Configuration du dépôt
-To develop locally, fork the Vite repository and clone it in your local machine. The Vite repo is a monorepo using pnpm workspaces. The package manager used to install and link dependencies must be [pnpm](https://pnpm.io/).
+Pour développer en local, forkez le dépôt Vite et clonez-le sur votre machine locale. Le dépôt Vite est un monorepo utilisant pnpm workspaces. Le gestionnaire de paquets utilisé pour installer et lier les dépendances doit être [pnpm](https://pnpm.io/).
-To develop and test the core `vite` package:
+Pour développer et tester le package du noyau `vite`:
-1. Run `pnpm i` in Vite's root folder.
+1. Executez `pnpm i`dans le dossier racine de Vite.
-2. Run `pnpm run build` in Vite's root folder.
+2. Executez `pnpm run build`dans le dossier racine de Vite.
-3. If you are developing Vite itself, you can go to `packages/vite` and run `pnpm run dev` to automatically rebuild Vite whenever you change its code.
+3. Si vous développez sur Vite en lui-même, vous pouvez aller dans `packages/vite`et lancer `pnpm run dev`pour reconstruire Vite automatiquement chaque fois que vous changez son code.
-You can alternatively use [Vite.js Docker Dev](https://github.com/nystudio107/vitejs-docker-dev) for a containerized Docker setup for Vite.js development.
+Vous pouvez également utiliser [Vite.js Docker Dev](https://github.com/nystudio107/vitejs-docker-dev) pour avoir un environnement Docker configuré pour le développement de Vite.
-> Vite uses pnpm v8. If you are working on multiple projects with different versions of pnpm, it's recommended to enable [Corepack](https://github.com/nodejs/corepack) by running `corepack enable`.
+> Vite utilise pnpm v8. Si vous travaillez sur plusieurs projets avec différentes versions de pnpm, il est recommandé d’activer [Corepack](https://github.com/nodejs/corepack) en lançant`corepack enable`.
-### Ignoring commits when running `git blame`
+### Ignorer les commits lors de l’exécution de `git blame`
-We have a `.git-blame-ignore-revs` file to ignore formatting changes.
-To make this file used by `git blame`, you need to run the following command.
+Nous avons un fichier `.git-blame-ignore-revs` pour ignorer les modifications de formatage.
+Pour que ce fichier soit utilisé par`git blame`, vous devez lancer la commande suivante.
```sh
git config --local blame.ignoreRevsFile .git-blame-ignore-revs
```
-## Debugging
+## Débogage
-To use breakpoints and explore code execution, you can use the ["Run and Debug"](https://code.visualstudio.com/docs/editor/debugging) feature from VS Code.
+Pour utiliser les points d’arrêt et explorer l’exécution du code, vous pouvez utiliser la fonctionnalité [« Run and Debug »](https://code.visualstudio.com/docs/editor/debugging) de VS Code.
-1. Add a `debugger` statement where you want to stop the code execution.
+1. Ajoutez une instruction `debugger` à l'endroit où vous souhaitez arrêter l’exécution du code.
-2. Click the "Run and Debug" icon in the activity bar of the editor, which opens the [_Run and Debug view_](https://code.visualstudio.com/docs/editor/debugging#_run-and-debug-view).
+2. Cliquez sur l’icône « Run and Debug » dans la barre d’activité de l’éditeur, qui ouvre la vue [_Run and Debug_](https://code.visualstudio.com/docs/editor/debugging#_run-and-debug-view).
-3. Click the "JavaScript Debug Terminal" button in the _Run and Debug view_, which opens a terminal in VS Code.
+3. Cliquez sur le bouton « JavaScript Debug Terminal » dans la vue [_Run and Debug_](https://code.visualstudio.com/docs/editor/debugging#_run-and-debug-view), qui ouvre un terminal dans VS Code.
-4. From that terminal, go to `playground/xxx`, and run `pnpm run dev`.
+4. Depuis ce terminal, allez dans`playground/xxx`, et lancez`pnpm run dev`.
-5. The execution will stop at the `debugger` statement, and you can use the [Debug toolbar](https://code.visualstudio.com/docs/editor/debugging#_debug-actions) to continue, step over, and restart the process...
+5. L’exécution s’arrêtera à l’instruction`debugger`, et vous pouvez utiliser la [Barre de débogage](https://code.visualstudio.com/docs/editor/debugging#_debug-actions) pour continuer, passez à l’étape suivante, et redémarrez le processus…
-### Debugging Errors in Vitest Tests Using Playwright (Chromium)
+### Débogage des erreurs dans les tests de Vitest en utilisant Playwright (Chromium)
-Some errors are masked and hidden away because of the layers of abstraction and sandboxed nature added by Vitest, Playwright, and Chromium. In order to see what's actually going wrong and the contents of the devtools console in those instances, follow this setup:
+Certaines erreurs sont masquées et cachées en raison des couches d'abstraction et de la nature sandboxée ajoutée par Vitest, Playwright et Chromium. Afin de voir ce qui se passe réellement et le contenu de la console de devtools, suivez cette configuration :
-1. Add a `debugger` statement to the `playground/vitestSetup.ts` -> `afterAll` hook. This will pause execution before the tests quit and the Playwright browser instance exits.
+1. Ajoutez une instruction `debugger` dans le hook `afterAll` de `playground/vitestSetup.ts`. Cela mettra en pause l’exécution avant que les tests ne quittent et l’instance de navigateur Playwright ne quitte.
-2. Run the tests with the `debug-serve` script command, which will enable remote debugging: `pnpm run debug-serve resolve`.
+2. Lancez les tests avec la commande de script`debug-serve`, qui activera le débogage distant :`pnpm run debug-serve resolve`.
-3. Wait for inspector devtools to open in your browser and the debugger to attach.
+3. Attendez que le devtools de l’inspecteur s’ouvre dans votre navigateur et que le débogage soit attaché.
-4. In the sources panel in the right column, click the play button to resume execution, and allow the tests to run, which will open a Chromium instance.
+4. Dans le panneau des sources dans la colonne de droite, cliquez sur le bouton de lecture pour reprendre l’exécution, et permettre aux tests de s’exécuter, ce qui ouvrira une instance de Chromium.
-5. Focusing the Chromium instance, you can open the browser devtools and inspect the console there to find the underlying problems.
+5. En sélectionnant l’instance de Chromium, vous pouvez ouvrir les outils de développement du navigateur et inspecter la console pour trouver les problèmes sous-jacents.
-6. To close everything, just stop the test process back in your terminal.
+6. Pour l’arrêter, arrêtez simplement le processus de test dans votre terminal.
-## Testing Vite against external packages
+## Test de Vite avec des packages externes
-You may wish to test your locally modified copy of Vite against another package that is built with Vite. For pnpm, after building Vite, you can use [`pnpm.overrides`](https://pnpm.io/package_json#pnpmoverrides) to do this. Note that `pnpm.overrides` must be specified in the root `package.json`, and you must list the package as a dependency in the root `package.json`:
+Vous souhaiterez peut-être tester votre copie modifiée de Vite contre un autre package construit avec Vite. Pour pnpm, après avoir construit Vite, vous pouvez utiliser [`pnpm.overrides`](https://pnpm.io/package_json#pnpmoverrides)pour cela. Notez que `pnpm.overrides` doit être spécifié dans la `package.json`racine, et vous devez lister le package comme une dépendance dans la `package.json`racine :
```json
{
@@ -78,41 +78,41 @@ You may wish to test your locally modified copy of Vite against another package
}
```
-And re-run `pnpm install` to link the package.
+Et relancez `pnpm install`pour lier le package.
-## Running Tests
+## Exécution des tests
-### Integration Tests
+### Tests d’intégration
-Each package under `playground/` contains a `__tests__` directory. The tests are run using [Vitest](https://vitest.dev/) + [Playwright](https://playwright.dev/) with custom integrations to make writing tests simple. The detailed setup is inside `vitest.config.e2e.js` and `playground/vitest*` files.
+Chaque package sous `playground/`contient un répertoire`__tests__`. Les tests sont exécutés en utilisant [Vitest](https://vitest.dev/) + [Playwright](https://playwright.dev/) avec des intégrations personnalisées pour rendre l’écriture de tests simple. La configuration détaillée est à l’intérieur de `vitest.config.e2e.js`et des fichiers`playground/vitest*`.
-Some playgrounds define variants to run the same app using different config setups. By convention, when running a test spec file in a nested folder in `__tests__`, the setup will try to use a config file named `vite.config-{folderName}.js` at the playground's root. You can see an example of variants in the [assets playground](https://github.com/vitejs/vite/tree/main/playground/assets).
+Certains playgrounds définissent des variantes pour exécuter la même application avec différentes configurations. Par convention, lorsque vous exécutez un fichier de spécification de test dans un répertoire imbriqué dans`__tests__`, la configuration tentera d’utiliser un fichier de configuration nommé `vite.config-{folderName}.js` à la racine du playground. Vous pouvez voir un exemple de variantes dans le [playground des assets](https://github.com/vitejs/vite/tree/main/playground/assets).
-Before running the tests, make sure that [Vite has been built](#repo-setup). On Windows, you may want to [activate Developer Mode](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development) to resolve [issues with symlink creation for non-admins](https://github.com/vitejs/vite/issues/7390). Also, you may want to [set git `core.symlinks` to `true` to resolve issues with symlinks in git](https://github.com/vitejs/vite/issues/5242).
+Avant d’exécuter les tests, assurez-vous que [Vite a bien été build](#repo-setup). Sur Windows, vous souhaiteriez peut-être [activer le mode Développeur](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development) pour résoudre [les problèmes avec la création de liens symboliques pour les non-administrateurs](https://github.com/vitejs/vite/issues/7390). De plus, vous souhaiteriez peut-être [définir `core.symlinks` à `true`pour résoudre les problèmes avec les liens symboliques dans git](https://github.com/vitejs/vite/issues/5242).
-Each integration test can be run under either dev server mode or build mode.
+Chaque test d’intégration peut être exécuté soit en mode serveur, soit en mode build.
-- `pnpm test` by default runs every integration test in both serve and build mode, and also unit tests.
+- `pnpm test` par défaut, exécute tous les tests d’intégration dans les modes serveur et build, ainsi que les tests unitaires.
-- `pnpm run test-serve` runs tests only under serve mode.
+- `pnpm run test-serve`exécute les tests uniquement en mode serveur.
-- `pnpm run test-build` runs tests only under build mode.
+- `pnpm run test-build`exécute les tests uniquement en mode build.
-- `pnpm run test-serve [match]` or `pnpm run test-build [match]` runs tests in specific packages that match the given filter. e.g. `pnpm run test-serve asset` runs tests for both `playground/asset` and `vite/src/node/__tests__/asset` under serve mode.
+- `pnpm run test-serve [match]`ou `pnpm run test-build [match]` exécute les tests dans des packages spécifiques qui correspondent au filtre donné. Par exemple, `pnpm run test-serve asset` exécute les tests pour les deux `playground/asset` et `vite/src/node/__tests__/asset` sous le mode serveur.
- Note package matching is not available for the `pnpm test` script, which always runs all tests.
+ Note : Le filtrage des packages n’est pas disponible pour le script`pnpm test`, qui exécute tous les tests.
-### Unit Tests
+### Tests unitaires
-Other than tests under `playground/` for integration tests, packages might contain unit tests under their `__tests__` directory. Unit tests are powered by [Vitest](https://vitest.dev/). The detailed config is inside `vitest.config.ts` files.
+Outre les tests sous `playground/`pour les tests d’intégration, les packages peuvent contenir des tests unitaires sous leur répertoire`__tests__`. Les tests unitaires sont alimentés par [Vitest](https://vitest.dev/). La configuration détaillée est à l’intérieur des fichiers`vitest.config.ts`.
-- `pnpm run test-unit` runs unit tests under each package.
+- `pnpm run test-unit`exécute les tests unitaires de chaque package.
-- `pnpm run test-unit [match]` runs tests in specific packages that match the given filter.
+- `pnpm run test-unit [match]`exécute les tests dans des packages spécifiques qui correspondent au filtre donné.
-### Test Env and Helpers
+### Environnement de test et helpers
-Inside playground tests, you can import the `page` object from `~utils`, which is a Playwright [`Page`](https://playwright.dev/docs/api/class-page) instance that has already navigated to the served page of the current playground. So, writing a test is as simple as:
+Dans les tests au sein de `playground/`, vous pouvez importer l’objet `page` depuis `~utils`, qui est une instance de [`Page`](https://playwright.dev/docs/api/class-page)de Playwright qui a déjà navigué vers la page servie du playground actuel. Donc, écrire un test est aussi simple que :
```js
import { page } from '~utils'
@@ -122,27 +122,27 @@ test('should work', async () => {
})
```
-Some common test helpers (e.g. `testDir`, `isBuild`, or `editFile`) are also available in the utils. Source code is located at `playground/test-utils.ts`.
+Certains helpers communs (e.g.`testDir`, `isBuild`, ou`editFile`) sont également disponibles dans les utils. Le code source est situé dans`playground/test-utils.ts`.
-Note: The test build environment uses a [different default set of Vite config](https://github.com/vitejs/vite/blob/main/playground/vitestSetup.ts#L102-L122) to skip transpilation during tests to make it faster. This may produce a different result compared to the default production build.
+Note : L’environnement de test de build utilise un [ensemble de configuration de Vite différent par défaut](https://github.com/vitejs/vite/blob/main/playground/vitestSetup.ts#L102-L122) pour ignorer la transpilation pendant les tests pour rendre les tests plus rapides. Cela peut produire un résultat différent par rapport au build de production par défaut.
-### Extending the Test Suite
+### Étendre le jeu de tests
-To add new tests, you should find a related playground to the fix or feature (or create a new one). As an example, static assets loading is tested in the [assets playground](https://github.com/vitejs/vite/tree/main/playground/assets). In this Vite app, there is a test for `?raw` imports with [a section defined in the `index.html` for it](https://github.com/vitejs/vite/blob/main/playground/assets/index.html#L121):
+Pour ajouter de nouveaux tests, vous devriez trouver un playground lié à la correction ou à la fonctionnalité (ou en créer un nouveau). Par exemple, le chargement des assets statiques est testé dans le [playground des assets](https://github.com/vitejs/vite/tree/main/playground/assets). Dans cette application Vite, il y a un test pour `?rawimports` avec [une section définie dans le `index.html`pour cela](https://github.com/vitejs/vite/blob/main/playground/assets/index.html#L121) :
```html
?raw import
```
-This will be modified [with the result of a file import](https://github.com/vitejs/vite/blob/main/playground/assets/index.html#L151):
+Cela sera modifié [avec le résultat d’un import de fichier](https://github.com/vitejs/vite/blob/main/playground/assets/index.html#L151) :
```js
import rawSvg from './nested/fragment.svg?raw'
text('.raw', rawSvg)
```
-...where the `text` util is defined as:
+… où la fonction `text`est définie comme :
```js
function text(el, text) {
@@ -150,7 +150,7 @@ function text(el, text) {
}
```
-In the [spec tests](https://github.com/vitejs/vite/blob/main/playground/assets/__tests__/assets.spec.ts#L180), the modifications to the DOM listed above are used to test this feature:
+Dans les [tests de spécification](https://github.com/vitejs/vite/blob/main/playground/assets/__tests__/assets.spec.ts#L180), les modifications apportées au DOM ci-dessus sont utilisées pour tester cette fonctionnalité :
```js
test('?raw import', async () => {
@@ -158,118 +158,118 @@ test('?raw import', async () => {
})
```
-## Note on Test Dependencies
+## Note sur les dépendances de test
-In many test cases, we need to mock dependencies using `link:` and `file:` protocols. `pnpm` treats `link:` as symlinks and `file:` as hardlinks. To test dependencies as if they were copied into `node_modules`, use the `file:` protocol. Otherwise, use the `link:` protocol.
+Dans de nombreux cas de test, nous avons besoin de simuler des dépendances en utilisant les protocoles `link:` et `file:`. `pnpm` Traite `link:`comme des liens symboliques et `file:`comme des lien physiques. Pour tester les dépendances comme si elles étaient copiées dans`node_modules`, utilisez le protocole`file:`. Sinon, utilisez le protocole`link:`.
-For a mock dependency, make sure you add a `@vitejs/test-` prefix to the package name. This will avoid possible issues like false-positive alerts.
+Pour une dépendance simulée (mockée), assurez-vous d’ajouter un préfixe `@vitejs/test-`au nom du package. Cela évitera les problèmes de faux positifs.
-## Debug Logging
+## Logging de débogage
-You can set the `DEBUG` environment variable to turn on debugging logs (e.g. `DEBUG="vite:resolve"`). To see all debug logs, you can set `DEBUG="vite:*"`, but be warned that it will be quite noisy. You can run `grep -r "createDebugger('vite:" packages/vite/src/` to see a list of available debug scopes.
+Vous pouvez définir la variable d’environnement `DEBUG`pour activer les logs de débogage (e.g.`DEBUG="vite:resolve"`). Pour voir tous les logs de débogage, vous pouvez définir`DEBUG="vite:*"`, mais soyez prévenu, cela sera assez verbeux. Vous pouvez lancer `grep -r "createDebugger('vite:" packages/vite/src/`pour voir la liste des scopes de débogage disponibles.
-## Pull Request Guidelines
+## Guidelines pour les PR
-- Checkout a topic branch from a base branch (e.g. `main`), and merge back against that branch.
+- Checkout une branche avec un sujet à partir d’une branche de base (e.g.`main`), et mergez-la vers cette branche.
-- If adding a new feature:
+- Si vous ajoutez une nouvelle fonctionnalité :
- - Add accompanying test case.
- - Provide a convincing reason to add this feature. Ideally, you should open a suggestion issue first, and have it approved before working on it.
+ - Ajoutez un cas de test l’accompagnant.
+ - Fournissez une raison convaincante pour ajouter cette fonctionnalité. Idéalement, vous devriez ouvrir un problème de suggestion d’abord, et doit avoir été approuvé avant de commencer à travailler dessus.
-- If fixing a bug:
+- Si vous corrigez un bug :
- - If you are resolving a special issue, add `(fix #xxxx[,#xxxx])` (#xxxx is the issue id) in your PR title for a better release log (e.g. `fix: update entities encoding/decoding (fix #3899)`).
- - Provide a detailed description of the bug in the PR. Live demo preferred.
- - Add appropriate test coverage if applicable.
+ - Si vous résolvez un problème déjà spécifié, ajoutez `(fix #xxxx[,#xxxx])`(#xxxx est l’identifiant du problème) dans le titre de votre PR pour un meilleur journal de release (e.g.`fix: update entities encoding/decoding (fix #3899)`).
+ - Fournissez une description détaillée du bug dans la PR. Un live démo est préférable.
+ - Ajoutez la couverture des tests si applicable.
-- It's OK to have multiple small commits as you work on the PR. GitHub can automatically squash them before merging.
+- Il est OK de commiter plusieurs petites modifications tant que vous travaillez sur la PR. GitHub peut les squasher automatiquement avant de fusionner.
-- Make sure tests pass!
+- Assurez-vous que les tests passent !
-- No need to worry about code style as long as you have installed the dev dependencies. Modified files are automatically formatted with Prettier on commit (by invoking [Git Hooks](https://git-scm.com/docs/githooks) via [simple-git-hooks](https://github.com/toplenboren/simple-git-hooks)).
+- Pas besoin de vous soucier du style de code tant que vous avez installé les dépendances de développement. Les fichiers modifiés sont automatiquement formatés avec Prettier lors du commit (en invoquant les [Git Hooks](https://git-scm.com/docs/githooks) via [simple-git-hooks](https://github.com/toplenboren/simple-git-hooks)).
-- PR title must follow the [commit message convention](./.github/commit-convention.md) so that changelogs can be automatically generated.
+- Le titre de la PR doit suivre la [convention de message de commit](./.github/commit-convention.md) pour que les journaux de release puissent être générés automatiquement.
-## Maintenance Guidelines
+## Guidelines pour la maintenance
-> The following section is mostly for maintainers who have commit access, but it's helpful to go through if you intend to make non-trivial contributions to the codebase.
+> La section suivante est principalement pour les mainteneurs qui ont accès au commit, mais il est utile de la parcourir si vous souhaitez faire des contributions non triviales à la base de code.
-### Issue Triaging Workflow
+### Workflow de tri des problèmes
-### Pull Request Review Workflow
+### Workflow de revue des PR
-## Notes on Dependencies
+## Notes sur les dépendances
-Vite aims to be lightweight, and this includes being aware of the number of npm dependencies and their size.
+Vite vise à être léger, et cela inclut le nombre de dépendances npm et leur taille.
-We use Rollup to pre-bundle most dependencies before publishing! Therefore, most dependencies, even those used in runtime source code, should be added under `devDependencies` by default. This also creates the following constraints that we need to be aware of in the codebase.
+Nous utilisons Rollup pour prébundle la plupart des dépendances avant de publier ! Par conséquent, la plupart des dépendances, même celles utilisées dans le code source en cours d’exécution, doivent être ajoutées par défaut sous`devDependencies`. Cela crée également les contraintes suivantes que nous devons être conscientes du codebase.
-### Usage of `require()`
+### Usage de `require()`
-In some cases, we intentionally lazy-require some dependencies to improve start-up performance. However, note that we cannot use simple `require('somedep')` calls since these are ignored in ESM files, so the dependency won't be included in the bundle, and the actual dependency won't even be there when published since they are in `devDependencies`.
+Dans certains cas, nous utilisons intentionnellement des dépendances de manière paresseuse (lazy load) pour améliorer les performances de démarrage. Cependant, notez que nous ne pouvons pas utiliser des appels simples `require('somedep')`dans les fichiers ESM, donc la dépendance ne sera pas incluse dans le bundle, et la dépendance réelle ne sera même pas là lorsqu’elle est publiée puisqu’elles sont dans`devDependencies`.
-Instead, use `(await import('somedep')).default`.
+Au lieu de cela, utilisez`(await import('somedep')).default`.
-### Think Before Adding a Dependency
+### Réfléchir avant d’ajouter une dépendance
-Most deps should be added to `devDependencies` even if they are needed at runtime. Some exceptions are:
+La plupart des dépendances devraient être ajoutées à `devDependencies` même si elles sont nécessaires au runtime. Certaines exceptions sont :
-- Type packages. Example: `@types/*`.
-- Deps that cannot be properly bundled due to binary files. Example: `esbuild`.
-- Deps that ship their own types that are used in Vite's own public types. Example: `rollup`.
+- Packages de types. Exemple :`@types/*`.
+- Les dépendances qui ne peuvent pas être correctement bundlées en raison de fichiers binaires. Exemple :`esbuild`.
+- Les dépendances qui livrent leurs propres types utilisés dans les types publics de Vite. Exemple :`rollup`.
-Avoid deps with large transitive dependencies that result in bloated size compared to the functionality it provides. For example, `http-proxy` itself plus `@types/http-proxy` is a little over 1MB in size, but `http-proxy-middleware` pulls in a ton of dependencies that make it 7MB(!) when a minimal custom middleware on top of `http-proxy` only requires a couple of lines of code.
+Évitez les grandes dépendances transitives qui entraînent une taille excessive par rapport à la fonctionnalité qu’elles fournissent. Par exemple, `http-proxy` ne fait en lui-même pas plus de 1MB mais `http-proxy-middleware` tire une tonne de dépendances qui le passent à 7 MB (!) lorsqu’un middleware personnalisé minimal sur `http-proxy` n’exige que quelques lignes de code.
-### Ensure Type Support
+### Assurer le support des types
-Vite aims to be fully usable as a dependency in a TypeScript project (e.g. it should provide proper typings for VitePress), and also in `vite.config.ts`. This means technically a dependency whose types are exposed needs to be part of `dependencies` instead of `devDependencies`. However, this also means we won't be able to bundle it.
+Vite vise à être entièrement utilisable comme dépendance dans un projet TypeScript (ex: il doit fournir des types corrects pour VitePress), et également dans`vite.config.ts`. Cela signifie techniquement que toute dépendance dont les types sont exposés doit être ajoutée à `dependencies` au lieu de`devDependencies`. Cependant, cela signifie également que nous ne pourrons pas le lier.
-To get around this, we inline some of these dependencies' types in `packages/vite/src/types`. This way, we can still expose the typing but bundle the dependency's source code.
+Pour contourner cela, nous intégrons certains types de ces dépendances dans `packages/vite/src/types`. De cette façon, nous pouvons toujours exposer les types, mais lier le code source de la dépendance.
-Use `pnpm run build-types-check` to check that the bundled types do not rely on types in `devDependencies`.
+Utilisez `pnpm run build-types-check` pour vérifier que les types liés ne dépendent pas de types dans`devDependencies`.
-For types shared between client and node, they should be added into `packages/vite/types`. These types are not bundled and are published as is (though they are still considered internal). Dependency types within this directory (e.g. `packages/vite/types/chokidar.d.ts`) are deprecated and should be added to `packages/vite/src/types` instead.
+Pour les types partagés entre le client et node, ils doivent être ajoutés dans`packages/vite/types`. Ces types ne sont pas liés et sont publiés tels quels (bien qu’ils soient toujours considérés comme internes). Les types de dépendances dans ce répertoire (ex:`packages/vite/types/chokidar.d.ts`) sont obsolètes et doivent être ajoutés à `packages/vite/src/types` à la place.
-### Think Before Adding Yet Another Option
+### Réflechissez avant d’ajouter encore une option
-We already have many config options, and we should avoid fixing an issue by adding yet another one. Before adding an option, consider whether the problem:
+Nous avons déjà de nombreuses options de configuration et nous devons éviter de résoudre un problème en ajoutant une autre option. Avant d’ajouter une option, demandez-vous si le problème :
-- is really worth addressing
-- can be fixed with a smarter default
-- has workaround using existing options
-- can be addressed with a plugin instead
+- est vraiment digne d’attention
+- peut être résolu avec une valeur par défaut plus élégante
+- a une solution de contournement utilisant des options existantes
+- peut être résolu avec un plugin au lieu d’une option
## Release
-If you have publish access, the steps below explain how to cut a release for a package. There are two phases for the release step: "Release" and "Publish".
+Si vous avez accès à la publication, les étapes ci-dessous expliquent comment couper une release pour un package. Il y a deux phases pour la procédure de release : « Release » et « Publish ».
-"Release" is done locally to generate the changelogs and git tags:
+« Release » est fait localement pour générer les journaux de release et les tags git :
-1. Make sure the git remote for https://github.com/vitejs/vite is set as `origin`.
-2. In the `vite` project root `main` branch, run `git pull` and `pnpm i` to get it up-to-date.
-3. Run `pnpm release` and follow the prompts to cut a release for a package. It will generate the changelog, a git release tag, and push them to `origin`. You can run with the `--dry` flag to test it out.
-4. When the command finishes, it will provide a link to https://github.com/vitejs/vite/actions/workflows/publish.yml.
-5. Click the link to visit the page, and follow the next steps below.
+1. Assurez-vous que le remote git pour https://github.com/vitejs/vite est défini comme `origin`.
+2. Dans le répertoire racine du projet `vite`, branche `main`, exécutez `git pull` et `pnpm i`pour le mettre à jour.
+3. Exécutez `pnpm release` et suivez les invites pour couper une release pour un package. Il générera le journal de release, un tag git et les poussera à `origin` . Vous pouvez lancer avec le flag `--dry` pour tester.
+4. Quand la commande est terminée, il fournira un lien vers https://github.com/vitejs/vite/actions/workflows/publish.yml.
+5. Cliquez sur le lien pour visiter la page, et suivez les étapes ci-dessous.
-"Publish" is done on GitHub Actions to publish the package to npm:
+« Publish » est fait sur GitHub Actions pour publier le package à npm :
-1. Shortly in the workflows page, a new workflow will appear for the released package and is waiting for approval to publish to npm.
-2. Click on the workflow to open its page.
-3. Click on the "Review deployments" button in the yellow box, a popup will appear.
-4. Check "Release" and click "Approve and deploy".
-5. The package will start publishing to npm.
+1. Quelques instants après la commande, un nouveau workflow apparaîtra pour le package publié et sera en attente d’approbation pour publier sur npm.
+2. Cliquez sur le workflow pour ouvrir sa page.
+3. Cliquez sur le bouton « Review deployments » dans la boîte jaune, une fenêtre popup apparaîtra.
+4. Vérifiez « Release » et cliquez sur « Approve and deploy ».
+5. Le package commencera à être publié sur npm.
-## Docs Translation Contribution
+## Contribution à la traduction des docs
-To add a new language to the Vite docs, see [`vite-docs-template`](https://github.com/tony19/vite-docs-template/blob/main/.github/CONTRIBUTING.md).
+Pour ajouter une nouvelle langue aux docs de Vite, voir[`vite-docs-template`](https://github.com/tony19/vite-docs-template/blob/main/.github/CONTRIBUTING.md).
diff --git a/README.md b/README.md
index c735a61..e9bb5a0 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,6 @@
-
-## This repo is a template for [Vite.js docs translation repositories](https://github.com/vitejs?q=docs). See [guide](/.github/CONTRIBUTING.md).
-
----
-Today we are excited to announce the official release of Vite 2.0!
+Aujourd'hui, nous sommes heureux d'annoncer la sortie officielle de Vite 2.0 !
-Vite (French word for "fast", pronounced `/vit/`) is a new kind of build tool for frontend web development. Think a pre-configured dev server + bundler combo, but leaner and faster. It leverages browser's [native ES modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) support and tools written in compile-to-native languages like [esbuild](https://esbuild.github.io/) to deliver a snappy and modern development experience.
+Vite (mot français pour "rapide", prononcé `/vit/`) est un nouvel outil de construction pour le développement web frontend. Pensez à un serveur de développement pré-configuré + combo de bundler, mais plus léger et plus rapide. Il exploite le support [native ES modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) du navigateur et des outils écrits dans des langages compilés en langage natif comme [esbuild](https://esbuild.github.io/) pour offrir une expérience de développement rapide et moderne.
-To get a sense of how fast Vite is, check out [this video comparison](https://twitter.com/amasad/status/1355379680275128321) of booting up a React application on Repl.it using Vite vs. `create-react-app` (CRA).
+Pour avoir une idée de la vitesse de Vite, consultez [cette vidéo de comparaison](https://twitter.com/amasad/status/1355379680275128321) de la mise en route d'une application React sur Repl.it en utilisant Vite par rappport à `create-react-app` (CRA).
-If you've never heard of Vite before and would love to learn more about it, check out [the rationale behind the project](https://vite.dev/guide/why.html). If you are interested in how Vite differs from other similar tools, check out the [comparisons](https://v5.vite.dev/guide/comparisons.html).
+Si vous n'avez jamais entendu parler de Vite avant et que vous souhaitez en savoir plus sur le projet, consultez [la raison derrière le projet](https://fr.vite.dev/guide/why.html). Si vous êtes intéressé par la différence entre Vite et d'autres outils similaires, consultez les [comparaisons](https://v5.vite.dev/guide/comparisons.html).
-## What's New in 2.0
+## Quoi de neuf dans 2.0
-Since we decided to completely refactor the internals before 1.0 got out of RC, this is in fact the first stable release of Vite. That said, Vite 2.0 brings about many big improvements over its previous incarnation:
+Puisque nous avons décidé de refactorer complètement les composants internes avant que 1.0 ne soit sortie de RC, c'est en fait la première version stable de Vite. Cela dit, Vite 2.0 apporte de nombreuses améliorations par rapport à la précédente version :
-### Framework Agnostic Core
+### Cœur totalement indépendant des frameworks
-The original idea of Vite started as a [hacky prototype that serves Vue single-file components over native ESM](https://github.com/vuejs/vue-dev-server). Vite 1 was a continuation of that idea with HMR implemented on top.
+L'idée originale de Vite a commencé comme un [prototype bidon qui servait les composants de fichier unique Vue sur ESM natif](https://github.com/vuejs/vue-dev-server). Vite 1 était une continuation de cette idée avec HMR implémentée par-dessus.
-Vite 2.0 takes what we learned along the way and is redesigned from scratch with a more robust internal architecture. It is now completely framework agnostic, and all framework-specific support is delegated to plugins. There are now [official templates for Vue, React, Preact, Lit Element](https://github.com/vitejs/vite/tree/main/packages/create-vite), and ongoing community efforts for Svelte integration.
+Vite 2.0 prend ce que nous avons appris le long du chemin et est redéfini de zéro avec une architecture interne plus robuste. Il est maintenant complètement indépendant des frameworks, et tout le support des frameworks spécifiques est délégué aux plugins. Il existe maintenant des [templates officiels pour Vue, React, Preact, Lit Element](https://github.com/vitejs/vite/tree/main/packages/create-vite), et des efforts de la communauté en cours pour l'intégration de Svelte.
-### New Plugin Format and API
+### Nouveau format de plugin et API
-Inspired by [WMR](https://github.com/preactjs/wmr), the new plugin system extends Rollup's plugin interface and is [compatible with many Rollup plugins](https://vite-rollup-plugins.patak.dev/) out of the box. Plugins can use Rollup-compatible hooks, with additional Vite-specific hooks and properties to adjust Vite-only behavior (e.g. differentiating dev vs. build or custom handling of HMR).
+Insipiré par [WMR](https://github.com/preactjs/wmr), le nouveau système de plugin étend l'interface de plugin de Rollup et est [compatible avec de nombreux plugins Rollup](https://vite-rollup-plugins.patak.dev/) out of the box. Les plugins peuvent utiliser les hooks compatibles Rollup, avec des hooks supplémentaires Vite et des propriétés pour ajuster le comportement Vite uniquement (ex. différencier le développement du build ou le traitement personnalisé de HMR).
-The [programmatic API](https://vite.dev/guide/api-javascript.html) has also been greatly improved to facilitate higher level tools / frameworks built on top of Vite.
+L'[API programmatique](https://fr.vite.dev/guide/api-javascript.html) a également été grandement améliorée pour faciliter les outils / frameworks de niveau supérieur construits sur Vite.
### esbuild Powered Dep Pre-Bundling
-Since Vite is a native ESM dev server, it pre-bundles dependencies to reduce the number browser requests and handle CommonJS to ESM conversion. Previously Vite did this using Rollup, and in 2.0 it now uses `esbuild` which results in 10-100x faster dependency pre-bundling. As a reference, cold-booting a test app with heavy dependencies like React Material UI previously took 28 seconds on an M1-powered MacBook Pro and now takes ~1.5 seconds. Expect similar improvements if you are switching from a traditional bundler based setup.
+Vite est un serveur de développement ESM natif, il pré-bundle donc les dépendances pour réduire le nombre de requêtes de navigateur et gérer la conversion de CommonJS en ESM. Précédemment, Vite faisait cela en utilisant Rollup, et dans 2.0, il utilise maintenant `esbuild` qui donne un gain de vitesse de10-100x pour le pré-bundle des dépendances. En guise de référence, le démarrage froid d'une application de test avec des dépendances lourdes comme React Material UI prendait 28 secondes sur un MacBook Pro M1 et maintenant prend environ 1.5 secondes. Vous pouvez vous attendre à des améliorations similaires si vous changez d'un environnement de build basé sur un bundler traditionnel.
-### First-class CSS Support
+### Support natif des CSS
-Vite treats CSS as a first-class citizen of the module graph and supports the following out of the box:
+Vite traite le CSS comme une entité de premier ordre du graphe des modules et prend en charge les éléments suivants de manière native :
-- **Resolver enhancement**: `@import` and `url()` paths in CSS are enhanced with Vite's resolver to respect aliases and npm dependencies.
-- **URL rebasing**: `url()` paths are automatically rebased regardless of where the file is imported from.
-- **CSS code splitting**: a code-split JS chunk also emits a corresponding CSS file, which is automatically loaded in parallel with the JS chunk when requested.
+- **Amélioration de la résolution** : `@import` et `url()` dans le CSS sont renforcés avec la résolution de Vite pour respecter les alias et les dépendances npm.
+- **Réécriture des URL** : `url()` sont automatiquement réécrites indépendamment de l'endroit où le fichier est importé.
+- **CSS code splitting** : un chunk JS code-splité émet également un fichier CSS correspondant, qui est automatiquement chargé en parallèle avec le chunk JS lorsqu'il est demandé.
-### Server-Side Rendering (SSR) Support
+### Support SSR (Rendu côté serveur)
-Vite 2.0 ships with [experimental SSR support](https://vite.dev/guide/ssr.html). Vite provides APIs to efficiently load and update ESM-based source code in Node.js during development (almost like server-side HMR), and automatically externalizes CommonJS-compatible dependencies to improve development and SSR build speed. The production server can be completely decoupled from Vite, and the same setup can be easily adapted to perform pre-rendering / SSG.
+Vite 2.0 embarque [un support SSR expérimental](https://fr.vite.dev/guide/ssr.html). Vite fournit des API pour charger et mettre à jour le code source ESM basé sur Node.js pendant le développement (presque comme le HMR côté serveur), et automatiquement externalise les dépendances CommonJS compatibles pour améliorer la vitesse de développement et de build SSR. Le serveur de production peut être complètement découplé de Vite, et le même montage peut être facilement adapté pour effectuer un rendu préalable / SSG.
-Vite SSR is provided as a low-level feature and we are expecting to see higher level frameworks leveraging it under the hood.
+Le support SSR est fourni comme une fonctionnalité de bas niveau et nous attendons à voir des frameworks l'utiliser en arrière-plan.
-### Opt-in Legacy Browser Support
+### Support des navigateurs obsolètes
-Vite targets modern browsers with native ESM support by default, but you can also opt-in to support legacy browsers via the official [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy). The plugin automatically generates dual modern/legacy bundles, and delivers the right bundle based on browser feature detection, ensuring more efficient code in modern browsers that support them.
+Vite cible les navigateurs modernes avec le support ESM natif par défaut, mais vous pouvez également choisir par défaut le support des navigateurs obsolètes via le plugin officiel [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy). Le plugin génère automatiquement des bundles modernes/hérités, et livre le bon bundle en fonction de la détection des fonctionnalités du navigateur, garantissant un code plus efficace dans les navigateurs modernes qui le supportent.
-## Give it a Try!
+## Essayez-le !
-That was a lot of features, but getting started with Vite is simple! You can spin up a Vite-powered app literally in a minute, starting with the following command (make sure you have Node.js >=12):
+Cela était beaucoup de fonctionnalités, mais le démarrage avec Vite est simple ! Vous pouvez lancer une application Vite en quelques secondes, en commençant par la commande suivante (assurez-vous que vous avez Node.js >=12) :
```bash
npm init @vitejs/app
```
-Then, check out [the guide](https://vite.dev/guide/) to see what Vite provides out of the box. You can also check out the source code on [GitHub](https://github.com/vitejs/vite), follow updates on [Twitter](https://twitter.com/vite_js), or join discussions with other Vite users on our [Discord chat server](http://chat.vite.dev/).
+Ensuite, consultez [le guide](https://fr.vite.dev/guide/) pour voir ce que Vite fournit par défaut. Vous pouvez également consulter le code source sur [GitHub](https://github.com/vitejs/vite), suivre les mises à jour sur [Twitter](https://twitter.com/vite_js), ou rejoindre les discussions avec d'autres utilisateurs de Vite sur notre [serveur de chat Discord](http://chat.vite.dev/).
diff --git a/docs/blog/announcing-vite3.md b/docs/blog/announcing-vite3.md
index efb3be8..e528a1c 100644
--- a/docs/blog/announcing-vite3.md
+++ b/docs/blog/announcing-vite3.md
@@ -1,7 +1,7 @@
---
-title: Vite 3.0 is out!
+title: Annonce de Vite 3.0
author:
- name: The Vite Team
+ name: L'équipe Vite
date: 2022-07-23
sidebar: false
head:
@@ -10,50 +10,50 @@ head:
content: website
- - meta
- property: og:title
- content: Announcing Vite 3
+ content: Annonce de Vite 3
- - meta
- property: og:image
- content: https://vite.dev/og-image-announcing-vite3.png
+ content: https://fr.vite.dev/og-image-announcing-vite3.png
- - meta
- property: og:url
- content: https://vite.dev/blog/announcing-vite3
+ content: https://fr.vite.dev/blog/announcing-vite3
- - meta
- property: og:description
- content: Vite 3 Release Announcement
+ content: Annonce de la sortie de Vite 3
- - meta
- name: twitter:card
content: summary_large_image
---
-# Vite 3.0 is out!
+# Vite 3.0 est sorti !
-_July 23, 2022_ - Check out the [Vite 4.0 announcement](./announcing-vite4.md)
+_23 Juillet, 2022_ - Consultez l'annonce de la sortie de [Vite 4.0](./announcing-vite4.md)
-In February last year, [Evan You](https://twitter.com/youyuxi) released Vite 2. Since then, its adoption has grown non-stop, reaching more than 1 million npm downloads per week. A sprawling ecosystem rapidly formed after the release. Vite is powering a renewed innovation race in Web frameworks. [Nuxt 3](https://v3.nuxtjs.org/) uses Vite by default. [SvelteKit](https://kit.svelte.dev/), [Astro](https://astro.build/), [Hydrogen](https://hydrogen.shopify.dev/), and [SolidStart](https://docs.solidjs.com/quick-start) are all built with Vite. [Laravel has now decided to use Vite by default](https://laravel.com/docs/9.x/vite). [Vite Ruby](https://vite-ruby.netlify.app/) shows how Vite can improve Rails DX. [Vitest](https://vitest.dev) is making strides as a Vite-native alternative to Jest. Vite is behind [Cypress](https://docs.cypress.io/guides/component-testing/writing-your-first-component-test) and [Playwright](https://playwright.dev/docs/test-components)'s new Component Testing features, Storybook has [Vite as an official builder](https://github.com/storybookjs/builder-vite). And [the list goes on](https://patak.dev/vite/ecosystem.html). Maintainers from most of these projects got involved in improving the Vite core itself, working closely with the Vite [team](https://vite.dev/team) and other contributors.
+En février dernier, [Evan You](https://twitter.com/youyuxi) a publié Vite 2. Depuis, son adoption a continué de croître sans cesse, atteignant plus d'1 million de téléchargements par semaine. Un écosystème étendu s'est rapidement formé après sa sortie. Vite est à l'origine d'une course à la réinvention dans le monde des frameworks Web. [Nuxt 3](https://v3.nuxtjs.org/) utilise Vite par défaut. [SvelteKit](https://kit.svelte.dev/), [Astro](https://astro.build/), [Hydrogen](https://hydrogen.shopify.dev/), et [SolidStart](https://docs.solidjs.com/quick-start) sont tous construits avec Vite. [Laravel a décidé d'utiliser Vite par défaut](https://laravel.com/docs/9.x/vite). [Vite Ruby](https://vite-ruby.netlify.app/) montre comment Vite peut améliorer l'expérience de développement de Rails. [Vitest](https://vitest.dev) progresse comme une alternative Vite-native à Jest. Vite est derrière les nouvelles fonctionnalités de [Cypress](https://docs.cypress.io/guides/component-testing/writing-your-first-component-test) et les nouvelles fonctionnalités de tests de composant de [Playwright](https://playwright.dev/docs/test-components), Storybook a [Vite comme constructeur officiel](https://github.com/storybookjs/builder-vite). Et [la liste continue](https://patak.dev/vite/ecosystem.html). Les responsables de la plupart de ces projets ont participé à l'amélioration du noyau Vite en travaillant de près avec le [team](https://fr.vite.dev/team) et d'autres contributeurs.
-
+
-Today, 16 months from the v2 launch we are happy to announce the release of Vite 3. We decided to release a new Vite major at least every year to align with [Node.js's EOL](https://nodejs.org/en/about/releases/), and take the opportunity to review Vite's API regularly with a short migration path for projects in the ecosystem.
+Aujourd'hui, 16 mois après le lancement de Vite 2, nous sommes heureux de publier Vite 3. Nous avons décidé de publier une nouvelle version majeure de Vite au moins tous les ans pour nous aligner avec [Node.js's EOL](https://nodejs.org/en/about/releases/), et prendre l'opportunité de réexaminer régulièrement l'API de Vite avec un chemin de migration court pour les projets de l'écosystème.
-Quick links:
+Liens rapides :
- [Docs](/)
-- [Migration Guide](https://v3.vite.dev/guide/migration.html)
+- [Guide de migration](https://v3.vite.dev/guide/migration.html)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#300-2022-07-13)
-If you are new to Vite, we recommend reading the [Why Vite Guide](https://vite.dev/guide/why.html). Then check out [the Getting Started](https://vite.dev/guide/) and [Features guide](https://vite.dev/guide/features) to see what Vite provides out of the box. As usual, contributions are welcome at [GitHub](https://github.com/vitejs/vite). More than [600 collaborators](https://github.com/vitejs/vite/graphs/contributors) have helped improve Vite so far. Follow the updates on [Twitter](https://twitter.com/vite_js), or join discussions with other Vite users on our [Discord chat server](http://chat.vite.dev/).
+Si vous êtes nouveau dans Vite, nous vous recommandons de lire le [Guide pourquoi Vite](https://fr.vite.dev/guide/why.html). Ensuite, consultez [le guide de démarrage](https://fr.vite.dev/guide/) et le [Guide des fonctionnalités](https://fr.vite.dev/guide/features) pour voir ce que Vite fournit par défaut. Comme d'habitude, les contributions sont bienvenues sur [GitHub](https://github.com/vitejs/vite). Plus de [600 contributeurs](https://github.com/vitejs/vite/graphs/contributors) ont contribué à améliorer Vite jusqu'à présent. Suivez les mises à jour sur [Twitter](https://twitter.com/vite_js), ou rejoignez les discussions avec d'autres utilisateurs de Vite sur notre [serveur de chat Discord](http://chat.vite.dev/).
-## New Documentation
+## Nouvelles documentations
-Go to [vite.dev](https://vite.dev) to enjoy the new v3 docs. Vite is now using the new [VitePress](https://vitepress.vuejs.org) default theme, with a stunning dark mode between other features.
+Consultez [vite.dev](https://fr.vite.dev) pour profiter des nouvelles documentations de Vite 3. Vite utilise maintenant le nouveau [VitePress](https://vitepress.vuejs.org) thème par défaut, avec un mode sombre entre autres fonctionnalités.
-[](https://vite.dev)
+[](https://fr.vite.dev)
-Several projects in the ecosystem have already migrated to it (see [Vitest](https://vitest.dev), [vite-plugin-pwa](https://vite-plugin-pwa.netlify.app/), and [VitePress](https://vitepress.vuejs.org/) itself).
+Plusieurs projets de l'écosystème ont déjà migré vers le nouveau thème (voir [Vitest](https://vitest.dev), [vite-plugin-pwa](https://vite-plugin-pwa.netlify.app/), et [VitePress](https://vitepress.vuejs.org/) lui-même).
-If you need to access the Vite 2 docs, they will remain online at [v2.vite.dev](https://v2.vite.dev). There is also a new [main.vite.dev](https://main.vite.dev) subdomain, where each commit to Vite’s main branch is auto deployed. This is useful when testing beta versions or contributing to the core’s development.
+Si vous avez besoin d'accéder aux documentations de Vite 2, elles resteront en ligne sur [v2.vite.dev](https://v2.vite.dev). Il existe également un nouveau sous-domaine [main.vite.dev](https://main.vite.dev), où chaque commit à la branche principale de Vite est automatiquement déployé. Cela est utile lorsque vous testez des versions bêta ou contribuez au développement du noyau.
-There is also now an official Spanish translation, that has been added to the previous Chinese and Japanese translations:
+Il existe également une traduction officielle espagnole, qui a été ajoutée aux traductions précédentes en chinois et japonais :
- [简体中文](https://cn.vite.dev/)
- [日本語](https://ja.vite.dev/)
@@ -61,7 +61,7 @@ There is also now an official Spanish translation, that has been added to the pr
## Create Vite Starter Templates
-[create-vite](/guide/#trying-vite-online) templates have been a great tool to quickly test Vite with your favorite framework. In Vite 3, all of the templates got a new theme in line with the new docs. Open them online and start playing with Vite 3 now:
+Les [templates de démarrage de create-vite](/guide/#trying-vite-online) ont été un outil formidable pour tester rapidement Vite avec votre framework préféré. Dans Vite 3, tous les templates ont reçu un nouveau thème en ligne avec les nouvelles documentations. Ouvrez-les en ligne et commencez à jouer avec Vite 3 maintenant :
@@ -101,9 +101,9 @@ There is also now an official Spanish translation, that has been added to the pr
}
-The theme is now shared by all templates. This should help better convey the scope for these starters as minimal templates to get started with Vite. For more complete solutions including linting, testing setup, and other features, there are official Vite-powered templates for some frameworks like [create-vue](https://github.com/vuejs/create-vue) and [create-svelte](https://github.com/sveltejs/kit). There is a community-maintained list of templates at [Awesome Vite](https://github.com/vitejs/awesome-vite#templates).
+Le thème est maintenant partagé par tous les templates. Cela devrait aider à mieux illustrer le champ d'application de ces templates en tant que templates minimaux pour commencer avec Vite. Pour des solutions plus complètes incluant le linting, le setup de tests, et d'autres fonctionnalités, il existe des templates officiels Vite pour certains frameworks comme [create-vue](https://github.com/vuejs/create-vue) et [create-svelte](https://github.com/sveltejs/kit). Il existe également une liste maintenue par la communauté de templates sur [Awesome Vite](https://github.com/vitejs/awesome-vite#templates).
-## Dev Improvements
+## Améliorations de l'environnement de développement
### Vite CLI
@@ -114,20 +114,20 @@ The theme is now shared by all templates. This should help better convey the sco
➜Network: use --host to expose
-Apart from the CLI’s aesthetics improvements, you’ll notice that the default dev server port is now 5173 and the preview server listening at 4173. This change ensures Vite will avoid collisions with other tools.
+Outre les améliorations esthétiques du CLI, vous remarquerez que le port du serveur de développement par défaut est maintenant 5173 et le serveur de prévisualisation écoute le port 4173. Ce changement garantit que Vite évitera les collisions avec d'autres outils.
-### Improved WebSocket Connection Strategy
+### Stratégie de connexion WebSocket améliorée
-One of the pain points of Vite 2 was configuring the server when running behind a proxy. Vite 3 changes the default connection scheme so it works out of the box in most scenarios. All these setups are now tested as part of the Vite Ecosystem CI through [`vite-setup-catalogue`](https://github.com/sapphi-red/vite-setup-catalogue).
+Un des points de frustration de Vite 2 était la configuration du serveur lors de l'exécution derrière un proxy. Vite 3 change la stratégie de connexion par défaut pour qu'elle fonctionne sans configuration dans la plupart des scénarios. Tous ces setups sont maintenant testés comme partie du Vite Ecosystem CI via [`vite-setup-catalogue`](https://github.com/sapphi-red/vite-setup-catalogue).
-### Cold Start Improvements
+### Améliorations de la vitesse de démarrage
-Vite now avoids full reload during cold start when imports are injected by plugins while crawling the initial statically imported modules ([#8869](https://github.com/vitejs/vite/issues/8869)).
+Vite évite maintenant le rechargement complet lors du démarrage froid lorsque les imports sont injectés par des plugins pendant le balayage des modules importés statiquement initialement ([#8869](https://github.com/vitejs/vite/issues/8869)).
- Click to learn more
+ Cliquer pour en savoir plus
-In Vite 2.9, both the scanner and optimizer were run in the background. In the best scenario, where the scanner would find every dependency, no reload was needed in cold start. But if the scanner missed a dependency, a new optimization phase and then a reload were needed. Vite was able to avoid some of these reloads in v2.9, as we detected if the new optimized chunks were compatible with the ones the browser had. But if there was a common dep, the sub-chunks could change and a reload was required to avoid duplicated state. In Vite 3, the optimized deps aren't handed to the browser until the crawling of static imports is done. A quick optimization phase is issued if there is a missing dep (for example, injected by a plugin), and only then, the bundled deps are sent. So, a page reload is no longer needed for these cases.
+Dans Vite 2.9, les deux scanners et optimisateurs étaient exécutés en arrière-plan. Dans le meilleur scénario, où le scanner trouverait chaque dépendance, aucun rechargement n'était nécessaire au démarrage froid. Mais si le scanner manquait une dépendance, un nouvel algorithme d'optimisation et un rechargement étaient nécessaires. Vite a été en mesure d'éviter certains de ces rechargements dans v2.9, car nous avons pu détecter si les nouveaux chunks optimisés étaient compatibles avec ceux que le navigateur avait. Mais si une dépendance commune manquait, les sous-chunks pourraient changer et un rechargement serait nécessaire pour éviter un état dupliqué. Dans Vite 3, les dépendances optimisées ne sont pas envoyées au navigateur avant le balayage des imports statiques. Une phase d'optimisation rapide est émise si une dépendance manque (par exemple, injectée par un plugin), et uniquement dans ce cas, les dépendances optimisées sont envoyées. Donc, un rechargement de page n'est plus nécessaire pour ces cas.
@@ -135,41 +135,41 @@ In Vite 2.9, both the scanner and optimizer were run in the background. In the b
### import.meta.glob
-`import.meta.glob` support was rewritten. Read about the new features in the [Glob Import Guide](/guide/features.html#glob-import):
+La prise en charge de `import.meta.glob` a été réécrite. Lisez les nouvelles fonctionnalités dans le [Guide des imports globaux](/guide/features.html#glob-import):
-[Multiple Patterns](/guide/features.html#multiple-patterns) can be passed as an array
+[Les patterns multiples](/guide/features.html#multiple-patterns) peuvent être passés comme un tableau
```js
import.meta.glob(['./dir/*.js', './another/*.js'])
```
-[Negative Patterns](/guide/features.html#negative-patterns) are now supported (prefixed with `!`) to ignore some specific files
+[Les patterns négatifs](/guide/features.html#negative-patterns) sont maintenant supportés (préfixés avec `!`) pour ignorer certains fichiers spécifiques
```js
import.meta.glob(['./dir/*.js', '!**/bar.js'])
```
-[Named Imports](/guide/features.html#named-imports) can be specified to improve tree-shaking
+[Les imports nommés](/guide/features.html#named-imports) peuvent être spécifiés pour améliorer le tree-shaking
```js
import.meta.glob('./dir/*.js', { import: 'setup' })
```
-[Custom Queries](/guide/features.html#custom-queries) can be passed to attach metadata
+[Les requêtes personnalisées](/guide/features.html#custom-queries) peuvent être passées pour attacher des métadonnées
```js
import.meta.glob('./dir/*.js', { query: { custom: 'data' } })
```
-[Eager Imports](/guide/features.html#glob-import) is now passed as a flag
+Les [Eager Imports](/guide/features.html#glob-import) sont maintenant passés comme un flag
```js
import.meta.glob('./dir/*.js', { eager: true })
```
-### Aligning WASM Import with Future Standards
+### Alignement avec les standards futurs pour les imports WASM
-The WebAssembly import API has been revised to avoid collisions with future standards and to make it more flexible:
+L'API d'importation WASM a été revue pour éviter les collisions avec les standards futurs et pour la rendre plus flexible :
```js
import init from './example.wasm?init'
@@ -179,98 +179,98 @@ init().then((instance) => {
})
```
-Learn more in the [WebAssembly guide](/guide/features.html#webassembly)
+En savoir plus dans le [Guide WASM](/guide/features.html#webassembly)
-## Build Improvements
+## Améliorations de la construction
-### ESM SSR Build by Default
+### ESM SSR Build par défaut
-Most SSR frameworks in the ecosystem were already using ESM builds. So, Vite 3 makes ESM the default format for SSR builds. This allows us to streamline previous [SSR externalization heuristics](https://vite.dev/guide/ssr.html#ssr-externals), externalizing dependencies by default.
+La plupart des frameworks SSR dans l'écosystème utilisaient déjà des builds ESM. Donc, Vite 3 fait de l'ESM le format par défaut pour les builds SSR. Cela permet de simplifier les heuristiques d'[externalisation SSR](https://fr.vite.dev/guide/ssr.html#ssr-externals) précédentes, externalisant les dépendances par défaut.
-### Improved Relative Base Support
+### Améliorations de la prise en charge de la base relative
-Vite 3 now properly supports relative base (using `base: ''`), allowing built assets to be deployed to different bases without re-building. This is useful when the base isn't known at build time, for example when deploying to content-addressable networks like [IPFS](https://ipfs.io/).
+Vite 3 prend en charge correctement la base relative (en utilisant `base: ''`), permettant aux assets construits d'être déployés sur différentes bases sans re-construction. Cela est utile lorsque la base n'est pas connue au moment du build, par exemple lors du déploiement sur des réseaux de distribution de contenu comme [IPFS](https://ipfs.io/).
-## Experimental Features
+## Fonctionnalités expérimentales
-### Built Asset Paths fine-grained Control (Experimental)
+### Contrôle de chemin de fichier construit (Expérimental)
-There are other deploy scenarios where this isn't enough. For example, if the generated hashed assets need to be deployed to a different CDN from the public files, then finer-grained control is required over path generation at build time. Vite 3 provides an experimental API to modify the built file paths. Check [Build Advanced Base Options](/guide/build.html#advanced-base-options) for more information.
+Il existe d'autres scénarios de déploiement où cela ne suffit pas. Par exemple, si les assets générés avec hash nécessitent d'être déployés sur un autre CDN que les fichiers publics, alors un contrôle plus fin sur la génération de chemins est nécessaire au moment du build. Vite 3 fournit une API expérimentale pour modifier les chemins des fichiers construits. En savoir plus dans [Options avancées de base de construction](/guide/build.html#advanced-base-options).
-### Esbuild Deps Optimization at Build Time (Experimental)
+### Optimisation des dépendances à la construction avec esbuild (Expérimental)
-One of the main differences between dev and build time is how Vite handles dependencies. During build time, [`@rollup/plugin-commonjs`](https://github.com/rollup/plugins/tree/master/packages/commonjs) is used to allow importing CJS only dependencies (like React). When using the dev server, esbuild is used instead to pre-bundle and optimize dependencies, and an inline interop scheme is applied while transforming user code importing CJS deps. During the development of Vite 3, we introduced the changes needed to also allow the use of [esbuild to optimize dependencies during build time](https://v3.vite.dev/guide/migration.html#using-esbuild-deps-optimization-at-build-time). [`@rollup/plugin-commonjs`](https://github.com/rollup/plugins/tree/master/packages/commonjs) can then be avoided, making dev and build time work in the same way.
+Une des principales différences entre le développement et le build est la façon dont Vite gère les dépendances. Pendant la construction, [`@rollup/plugin-commonjs`](https://github.com/rollup/plugins/tree/master/packages/commonjs) est utilisé pour permettre l'importation de dépendances CJS uniquement (comme React). Lors de l'utilisation du serveur de développement, esbuild est utilisé à la place pour pré-bundler et optimiser les dépendances, et un schéma d'interopération en ligne est appliqué pendant la transformation du code utilisateur important des dépendances CJS. Pendant le développement de Vite 3, nous avons introduit les modifications nécessaires pour permettre également l'utilisation de [esbuild pour optimiser les dépendances pendant le build](https://v3.vite.dev/guide/migration.html#using-esbuild-deps-optimization-at-build-time). [`@rollup/plugin-commonjs`](https://github.com/rollup/plugins/tree/master/packages/commonjs) peut alors être évité, faisant en sorte que le développement et le build fonctionnent de la même manière.
-Given that Rollup v3 will be out in the next months, and we're going to follow up with another Vite major, we've decided to make this mode optional to reduce v3 scope and give Vite and the ecosystem more time to work out possible issues with the new CJS interop approach during build time. Frameworks may switch to using esbuild deps optimization during build time by default at their own pace before Vite 4.
+Étant donné que Rollup v3 sortira dans les prochains mois, et que nous allons suivre avec une autre version majeure de Vite, nous avons décidé de rendre ce mode optionnel pour réduire la portée de v3 et donner plus de temps à Vite et l'écosystème pour travailler sur les problèmes possibles avec la nouvelle approche d'interopération CJS pendant le build. Les frameworks peuvent basculer vers l'utilisation de l'optimisation des dépendances esbuild pendant le build par défaut à leur propre rythme avant la sortie de Vite 4.
-### HMR Partial Accept (Experimental)
+### HMR Partial Accept (Expérimental)
-There is opt-in support for [HMR Partial Accept](https://github.com/vitejs/vite/pull/7324). This feature could unlock finer-grained HMR for framework components that export several bindings in the same module. You can learn more at [the discussion for this proposal](https://github.com/vitejs/vite/discussions/7309).
+Il existe un support integré pour [HMR Partial Accept](https://github.com/vitejs/vite/pull/7324). Cette fonctionnalité pourrait débloquer un HMR plus fin pour les composants de framework qui exportent plusieurs liaisons dans le même module. En savoir plus sur [la discussion pour cette proposition](https://github.com/vitejs/vite/discussions/7309).
-## Bundle Size Reduction
+## Réduction de la taille du bundle
-Vite cares about its publish and install footprint; a fast installation of a new app is a feature. Vite bundles most of its dependencies and tries to use modern lightweight alternatives where possible. Continuing with this ongoing goal, Vite 3 publish size is 30% smaller than v2.
+Vite s'occupe de son empreinte de publication et d'installation ; une installation rapide d'une nouvelle application est une fonctionnalité. Vite regroupe la plupart de ses dépendances et essaie d'utiliser des alternatives modernes légères si possible. En poursuivant cet objectif, la taille de publication de Vite 3 est 30% plus petite que v2.
-| | Publish Size | Install Size |
+| | Taille de publication | Taille d'installation |
| ----------- | :----------: | :----------: |
| Vite 2.9.14 | 4.38MB | 19.1MB |
| Vite 3.0.0 | 3.05MB | 17.8MB |
-| Reduction | -30% | -7% |
+| Réduction | -30% | -7% |
-In part, this reduction was possible by making some dependencies that most users weren't needing optional. First, [Terser](https://github.com/terser/terser) is no longer installed by default. This dependency was no longer needed since we already made esbuild the default minifier for both JS and CSS in Vite 2. If you use `build.minify: 'terser'`, you'll need to install it (`npm add -D terser`). We also moved [node-forge](https://github.com/digitalbazaar/forge) out of the monorepo, implementing support for automatic https certificate generation as a new plugin: [`@vitejs/plugin-basic-ssl`](https://v3.vite.dev/guide/migration.html#automatic-https-certificate-generation). Since this feature only creates untrusted certificates that are not added to the local store, it didn't justify the added size.
+En partie, cette réduction a été possible en rendant certaines dépendances optionnelles pour la plupart des utilisateurs. Premièrement, [Terser](https://github.com/terser/terser) n'est plus installé par défaut. Cette dépendance n'était plus nécessaire depuis que nous avons fait d'esbuild le minificateur par défaut pour les deux JS et CSS dans Vite 2. Si vous utilisez `build.minify: 'terser'`, vous devez l'installer (`npm add -D terser`). Nous avons également déplacé [node-forge](https://github.com/digitalbazaar/forge) hors du monorepo, en implémentant le support pour la génération automatique de certificats HTTPS en tant que nouveau plugin : [`@vitejs/plugin-basic-ssl`](https://v3.vite.dev/guide/migration.html#automatic-https-certificate-generation). Étant donné que cette fonctionnalité n'a créé que des certificats non fiables qui ne sont pas ajoutés au store local, elle n'a pas justifié la taille supplémentaire.
-## Bug Fixing
+## Correction des bugs
-A triaging marathon was spearheaded by [@bluwyoo](https://twitter.com/bluwyoo), [@sapphi_red](https://twitter.com/sapphi_red), that recently joined the Vite team. During the past three months, the Vite open issues were reduced from 770 to 400. And this dive was achieved while the newly open PRs were at an all-time high. At the same time, [@haoqunjiang](https://twitter.com/haoqunjiang) had also curated a comprehensive [overview of Vite issues](https://github.com/vitejs/vite/discussions/8232).
+Un triage marathon a été lancé par [@bluwyoo](https://twitter.com/bluwyoo), [@sapphi_red](https://twitter.com/sapphi_red), qui ont rejoint l'équipe Vite récemment. Durant les trois derniers mois, les tickets ouverts de Vite ont été réduits de 770 à 400. Et cette réduction a été atteinte alors que le nombre de PRs ouvertes était à son maximum. À la même époque, [@haoqunjiang](https://twitter.com/haoqunjiang) avait également élaboré une vue d'ensemble complète des tickets de Vite : [Vue d'ensemble des tickets de Vite](https://github.com/vitejs/vite/discussions/8232).
-[](https://www.repotrends.com/vitejs/vite)
+[](https://www.repotrends.com/vitejs/vite)
-[](https://www.repotrends.com/vitejs/vite)
+[](https://www.repotrends.com/vitejs/vite)
-## Compatibility Notes
+## Notes de compatibilité
-- Vite no longer supports Node.js 12 / 13 / 15, which reached its EOL. Node.js 14.18+ / 16+ is now required.
-- Vite is now published as ESM, with a CJS proxy to the ESM entry for compatibility.
-- The Modern Browser Baseline now targets browsers which support the [native ES Modules](https://caniuse.com/es6-module), [native ESM dynamic import](https://caniuse.com/es6-module-dynamic-import), and [`import.meta`](https://caniuse.com/mdn-javascript_operators_import_meta) features.
-- JS file extensions in SSR and library mode now use a valid extension (`js`, `mjs`, or `cjs`) for output JS entries and chunks based on their format and the package type.
+- Vite ne supporte plus Node.js 12 / 13 / 15, qui a atteint son EOL. Node.js 14.18+ / 16+ est maintenant requis.
+- Vite est maintenant publié en tant que ESM, avec un proxy CJS vers l'entrée ESM pour la compatibilité.
+- La ligne de base des navigateurs modernes cible maintenant les navigateurs qui prennent en charge les [modules ES natifs](https://caniuse.com/es6-module), [native ESM dynamic import](https://caniuse.com/es6-module-dynamic-import), et les fonctionnalités [`import.meta`](https://caniuse.com/mdn-javascript_operators_import_meta).
+- Les extensions de fichiers JS dans le mode SSR et en mode bibliothèque utilisent maintenant une extension valide (`js`, `mjs`, ou `cjs`) pour les entrées et les chunks de sortie JS en fonction de leur format et du type de package.
-Learn more in the [Migration Guide](https://v3.vite.dev/guide/migration.html).
+En savoir plus dans le [Guide de migration](https://v3.vite.dev/guide/migration.html).
-## Upgrades to Vite Core
+## Améliorations de Vite Core
-While working towards Vite 3, we also improved the contributing experience for collaborators to [Vite Core](https://github.com/vitejs/vite).
+Alors que nous travaillions vers Vite 3, nous avons également amélioré l'expérience de contribution pour les collaborateurs de [Vite Core](https://github.com/vitejs/vite).
-- Unit and E2E tests have been migrated to [Vitest](https://vitest.dev), providing a faster and more stable DX. This move also works as dog fooding for an important infrastructure project in the ecosystem.
-- VitePress build is now tested as part of CI.
-- Vite upgraded to [pnpm 7](https://pnpm.io/), following the rest of the ecosystem.
-- Playgrounds have been moved to [`/playgrounds`](https://github.com/vitejs/vite/tree/main/playground) out of packages directory.
-- The packages and playgrounds are now `"type": "module"`.
-- Plugins are now bundled using [unbuild](https://github.com/unjs/unbuild), and [plugin-vue-jsx](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue-jsx) and [plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) were moved to TypeScript.
+- Les tests unitaires et E2E ont été migrés vers [Vitest](https://vitest.dev), fournissant une expérience de développement plus rapide et plus stable. Cette migration fonctionne également comme un test pour un projet infrastructure important dans l'écosystème.
+- Le build de VitePress est maintenant testé dans la CI.
+- Vite a été mis à jour vers [pnpm 7](https://pnpm.io/), suivant le reste de l'écosystème.
+- Les playgrounds ont été déplacés hors du répertoire des packages dans [`/playgrounds`](https://github.com/vitejs/vite/tree/main/playground).
+- Les packages et les playgrounds sont maintenant `"type": "module"`.
+- Les plugins sont maintenant regroupés en utilisant [unbuild](https://github.com/unjs/unbuild), [plugin-vue-jsx](https://github.com/vitejs/vite-plugin-vue/tree/main/packages/plugin-vue-jsx) et [plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) ont été déplacés vers TypeScript.
-## The Ecosystem is Ready for v3
+## L'écosystème est prêt pour v3
-We have worked closely with projects in the ecosystem to ensure that frameworks powered by Vite are ready for Vite 3. [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) allows us to run the CI's from the leading players in the ecosystem against Vite's main branch and receive timely reports before introducing a regression. Today's release should soon be compatible with most projects using Vite.
+Nous avons travaillé de près avec les projets de l'écosystème pour s'assurer que les frameworks alimentés par Vite sont prêts pour Vite 3. [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) nous permet de lancer les CI des principaux joueurs de l'écosystème contre le main branch de Vite et de recevoir des rapports en temps réel avant de présenter une régression. Aujourd'hui, cette sortie devrait être compatible avec la plupart des projets utilisant Vite.
-## Acknowledgments
+## Remerciements
-Vite 3 is the result of the aggregate effort of members of the [Vite Team](/team) working together with ecosystem project maintainers and other collaborators to Vite core.
+Vite 3 est le résultat du travail collectif des membres du [Vite Team](/team) travaillant ensemble avec les responsables de projets de l'écosystème et d'autres collaborateurs pour le noyau de Vite.
-We want to thank everyone that have implemented features, and fixes, given feedback, and have been involved in Vite 3:
+Nous voulons remercier toutes les personnes qui ont implémenté des fonctionnalités, corrigé des bugs, donné des retours, et ont été impliquées dans Vite 3 :
-- Vite team members [@youyuxi](https://twitter.com/youyuxi), [@patak_dev](https://twitter.com/patak_dev), [@antfu7](https://twitter.com/antfu7), [@bluwyoo](https://twitter.com/bluwyoo), [@sapphi_red](https://twitter.com/sapphi_red), [@haoqunjiang](https://twitter.com/haoqunjiang), [@poyoho](https://github.com/poyoho), [@Shini_92](https://twitter.com/Shini_92), and [@retropragma](https://twitter.com/retropragma).
-- [@benmccann](https://github.com/benmccann), [@danielcroe](https://twitter.com/danielcroe), [@brillout](https://twitter.com/brillout), [@sheremet_va](https://twitter.com/sheremet_va), [@userquin](https://twitter.com/userquin), [@enzoinnocenzi](https://twitter.com/enzoinnocenzi), [@maximomussini](https://twitter.com/maximomussini), [@IanVanSchooten](https://twitter.com/IanVanSchooten), the [Astro team](https://astro.build/), and all other maintainers of frameworks and plugins in the ecosystem in that helped shape v3.
-- [@dominikg](https://github.com/dominikg) for his work on vite-ecosystem-ci.
-- [@ZoltanKochan](https://twitter.com/ZoltanKochan) for his work on [pnpm](https://pnpm.io/), and for his responsiveness when we needed support with it.
-- [@rixo](https://github.com/rixo) for HMR Partial Accept support.
-- [@KiaKing85](https://twitter.com/KiaKing85) for getting the theme ready for the Vite 3 release, and [@\_brc_dd](https://twitter.com/_brc_dd) for working on the VitePress internals.
-- [@CodingWithCego](https://twitter.com/CodingWithCego) for the new Spanish translation, and [@ShenQingchuan](https://twitter.com/ShenQingchuan), [@hiro-lapis](https://github.com/hiro-lapis) and others in the Chinese and Japanese translations teams for keeping the translated docs up to date.
+- Les membres de l'équipe Vite [@youyuxi](https://twitter.com/youyuxi), [@patak_dev](https://twitter.com/patak_dev), [@antfu7](https://twitter.com/antfu7), [@bluwyoo](https://twitter.com/bluwyoo), [@sapphi_red](https://twitter.com/sapphi_red), [@haoqunjiang](https://twitter.com/haoqunjiang), [@poyoho](https://github.com/poyoho), [@Shini_92](https://twitter.com/Shini_92), et [@retropragma](https://twitter.com/retropragma).
+- [@benmccann](https://github.com/benmccann), [@danielcroe](https://twitter.com/danielcroe), [@brillout](https://twitter.com/brillout), [@sheremet_va](https://twitter.com/sheremet_va), [@userquin](https://twitter.com/userquin), [@enzoinnocenzi](https://twitter.com/enzoinnocenzi), [@maximomussini](https://twitter.com/maximomussini), [@IanVanSchooten](https://twitter.com/IanVanSchooten), l'équipe [Astro](https://astro.build/), et tous les responsables de frameworks et de plugins dans l'écosystème qui ont contribué à la mise en place de v3.
+- [@dominikg](https://github.com/dominikg) pour son travail sur vite-ecosystem-ci.
+- [@ZoltanKochan](https://twitter.com/ZoltanKochan) pour son travail sur [pnpm](https://pnpm.io/), et pour sa réactivité lorsque nous avons eu besoin de son support.
+- [@rixo](https://github.com/rixo) pour le support de HMR Partial Accept.
+- [@KiaKing85](https://twitter.com/KiaKing85) pour avoir préparé le thème pour la sortie de Vite 3, et [@\_brc_dd](https://twitter.com/_brc_dd) pour travailler sur les internals de VitePress.
+- [@CodingWithCego](https://twitter.com/CodingWithCego) pour la traduction espagnole, et [@ShenQingchuan](https://twitter.com/ShenQingchuan), [@hiro-lapis](https://github.com/hiro-lapis) et d'autres membres des équipes de traduction en chinois et japonais pour maintenir les documentations traduites à jour.
-We also want to thank individuals and companies sponsoring the Vite team, and companies investing in Vite development: some of [@antfu7](https://twitter.com/antfu7)'s work on Vite and the ecosystem is part of his job at [Nuxt Labs](https://nuxtlabs.com/), and [StackBlitz](https://stackblitz.com/) hired [@patak_dev](https://twitter.com/patak_dev) to work full time on Vite.
+Nous voulons également remercier les individus et les entreprises qui soutiennent l'équipe Vite, et les entreprises qui investissent dans le développement de Vite : une partie du travail de [@antfu7](https://twitter.com/antfu7) sur Vite et l'écosystème est son travail à [Nuxt Labs](https://nuxtlabs.com/), et [StackBlitz](https://stackblitz.com/) a embauché [@patak_dev](https://twitter.com/patak_dev) pour travailler à plein temps sur Vite.
-## What's Next
+## Qu'en est-il de la prochaine version majeure ?
-We'll take the following months to ensure a smooth transition for all the projects built on top of Vite. So the first minors will be focused on continuing our triaging efforts with a focus on newly opened issues.
+Nous allons prendre les prochains mois pour nous assurer que la transition sera fluide pour tous les projets construits sur Vite. Donc, les premières majeures seront concentrées sur la continuation de nos efforts de triage avec un focus sur les nouveaux tickets ouverts.
-The Rollup team is [working on its next major](https://twitter.com/lukastaegert/status/1544186847399743488), to be released in the following months. Once the Rollup plugins ecosystem has time to update, we'll follow up with a new Vite major. This will give us another opportunity to introduce more significant changes this year, which we could take to stabilize some of the experimental features introduced in this release.
+L'équipe Rollup [travaille sur sa prochaine majeure](https://twitter.com/lukastaegert/status/1544186847399743488), qui sera publiée dans les prochains mois. Une fois que l'écosystème des plugins Rollup aura le temps de mettre à jour, nous ferons suivre avec une nouvelle majeure de Vite. Cela nous donnera une autre opportunité de présenter des changements plus significatifs cette année, ce que nous pourrions prendre pour stabiliser certaines fonctionnalités expérimentales introduites dans cette version.
-If you are interested in helping improve Vite, the best way to get on board is to help with triaging issues. Join [our Discord](https://chat.vite.dev) and look for the `#contributing` channel. Or get involved in our `#docs`, `#help` others, or create plugins. We are just getting started. There are many open ideas to keep improving Vite's DX.
+Si vous êtes intéressé pour améliorer Vite, la meilleure façon de vous impliquer est de contribuer au triage des tickets. Rejoignez [notre serveur Discord](https://chat.vite.dev) et cherchez le canal `#contributing`. Ou participez à nos `#docs`, `#help` d'autres, ou créez des plugins. Nous sommes juste au début. Il y a beaucoup d'idées ouvertes pour améliorer l'expérience de développement de Vite.
diff --git a/docs/blog/announcing-vite4-3.md b/docs/blog/announcing-vite4-3.md
index b725308..c5f4560 100644
--- a/docs/blog/announcing-vite4-3.md
+++ b/docs/blog/announcing-vite4-3.md
@@ -1,7 +1,7 @@
---
-title: Vite 4.3 is out!
+title: Vite 4.3 est sorti !
author:
- name: The Vite Team
+ name: L'équipe Vite
date: 2023-04-20
sidebar: false
head:
@@ -10,61 +10,61 @@ head:
content: website
- - meta
- property: og:title
- content: Announcing Vite 4.3
+ content: Annonce de Vite 4.3
- - meta
- property: og:image
- content: https://vite.dev/og-image-announcing-vite4-3.png
+ content: https://fr.vite.dev/og-image-announcing-vite4-3.png
- - meta
- property: og:url
- content: https://vite.dev/blog/announcing-vite4-3
+ content: https://fr.vite.dev/blog/announcing-vite4-3
- - meta
- property: og:description
- content: Vite 4.3 Release Announcement
+ content: Annonce de la sortie de Vite 4.3
- - meta
- name: twitter:card
content: summary_large_image
---
-# Vite 4.3 is out!
+# Vite 4.3 est sorti !
-_April 20, 2023_
+_20 avril 2023_
-
+
-Quick links:
+Liens rapides :
- Docs: [English](/), [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/)
- [Vite 4.3 Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#430-2023-04-20)
-## Performance Improvements
+## Améliorations des performances
-In this minor, we focused on improving the dev server performance. The resolve logic got streamlined, improving hot paths and implementing smarter caching for finding `package.json`, TS config files, and resolved URL in general.
+Dans cette majeure, nous nous sommes concentrés sur l'amélioration des performances du serveur de développement. La logique de résolution a été simplifiée, améliorant les chemins de hot path et implémentant un cache plus intelligent pour trouver `package.json`, les fichiers de configuration TS et les URL résolues en général.
-You can read a detailed walkthrough of the performance work done in this blog post by one of Vite Contributors: [How we made Vite 4.3 faaaaster 🚀](https://sun0day.github.io/blog/vite/why-vite4_3-is-faster.html).
+Vous pouvez lire un guide détaillé de l'amélioration des performances dans cet article de blog par un contributeur de Vite : [Comment nous avons rendu Vite 4.3 plus rapide 🚀](https://sun0day.github.io/blog/vite/why-vite4_3-is-faster.html).
-This sprint resulted in speed improvements across the board compared to Vite 4.2.
+Ce sprint a abouti à des améliorations de performances sur tous les tableaux comparé à Vite 4.2.
-These are the performance improvements as measured by [sapphi-red/performance-compare](https://github.com/sapphi-red/performance-compare), which tests an app with 1000 React Components cold and warm dev server startup time as well as HMR times for a root and a leaf component:
+Ces sont les améliorations de performances mesurées par [sapphi-red/performance-compare](https://github.com/sapphi-red/performance-compare), qui teste une application avec 1000 composants React froids et chauds et les temps de démarrage du serveur de développement ainsi que les temps de HMR pour un composant racine et un composant feuille :
-| **Vite (babel)** | Vite 4.2 | Vite 4.3 | Improvement |
+| **Vite (babel)** | Vite 4.2 | Vite 4.3 | Amélioration |
| :----------------- | --------: | -------: | ----------: |
| **dev cold start** | 17249.0ms | 5132.4ms | -70.2% |
| **dev warm start** | 6027.8ms | 4536.1ms | -24.7% |
| **Root HMR** | 46.8ms | 26.7ms | -42.9% |
| **Leaf HMR** | 27.0ms | 12.9ms | -52.2% |
-| **Vite (swc)** | Vite 4.2 | Vite 4.3 | Improvement |
+| **Vite (swc)** | Vite 4.2 | Vite 4.3 | Amélioration |
| :----------------- | --------: | -------: | ----------: |
| **dev cold start** | 13552.5ms | 3201.0ms | -76.4% |
| **dev warm start** | 4625.5ms | 2834.4ms | -38.7% |
| **Root HMR** | 30.5ms | 24.0ms | -21.3% |
| **Leaf HMR** | 16.9ms | 10.0ms | -40.8% |
-
+
-
+
-You can read more information about the benchmark [here](https://gist.github.com/sapphi-red/25be97327ee64a3c1dce793444afdf6e). Specs and Versions for this performance run:
+Vous pouvez en savoir plus sur le benchmark [ici](https://gist.github.com/sapphi-red/25be97327ee64a3c1dce793444afdf6e). Spécifications et versions pour cette exécution de performance :
- CPU: Ryzen 9 5900X, Memory: DDR4-3600 32GB, SSD: WD Blue SN550 NVME SSD
- Windows 10 Pro 21H2 19044.2846
@@ -75,16 +75,16 @@ You can read more information about the benchmark [here](https://gist.github.com
- Vite 4.2 (swc): Vite 4.2.1 + plugin-react-swc 3.2.0
- Vite 4.3 (swc): Vite 4.3.0 + plugin-react-swc 3.3.0
-Early adopters have also reported seeing 1.5x-2x dev startup time improvement on real apps while testing the Vite 4.3 beta. We'd love to know the results for your apps.
+Les early adopters ont également signalé une amélioration des temps de démarrage du serveur de développement de 1.5x à 2x sur les applications réelles lors de la mise à jour vers la version bêta de Vite 4.3. Nous aimerions connaître les résultats pour vos applications.
## Profiling
-We'll continue to work on Vite's performance. We're working on an official [Benchmark tool](https://github.com/vitejs/vite-benchmark) for Vite that let us get performance metrics for each Pull Request.
+Nous continuerons à travailler sur les performances de Vite. Nous travaillons sur une [outil de benchmark officiel](https://github.com/vitejs/vite-benchmark) pour Vite qui nous permet de mesurer les performances pour chaque Pull Request.
-And [vite-plugin-inspect](https://github.com/antfu/vite-plugin-inspect) now has more performance-related features to help you identify which plugins or middlewares are the bottleneck for your applications.
+Et [vite-plugin-inspect](https://github.com/antfu/vite-plugin-inspect) a maintenant plus de fonctionnalités liées aux performances pour vous aider à identifier quels plugins ou middlewares sont le goulot d'étranglement pour vos applications.
-Using `vite --profile` (and then pressing `p`) once the page loads will save a CPU profile of the dev server startup. You can open them in an app as [speedscope](https://www.speedscope.app/) to identify performance issues. And you can share your findings with the Vite Team in a [Discussion](https://github.com/vitejs/vite/discussions) or in [Vite's Discord](https://chat.vite.dev).
+Utiliser `vite --profile` (et appuyer sur `p` une fois que la page est chargée) enregistrera un profil CPU du démarrage du serveur de développement. Vous pouvez les ouvrir dans une application comme [speedscope](https://www.speedscope.app/) pour identifier les problèmes de performances. Et vous pouvez partager vos retombées avec l'équipe Vite dans un [Discussion](https://github.com/vitejs/vite/discussions) ou dans [Vite's Discord](https://chat.vite.dev).
## Next Steps
-We decided to do a single Vite Major this year aligning with the [EOL of Node.js 16](https://endoflife.date/nodejs) in September, dropping support for both Node.js 14 and 16 in it. If you would like to get involved, we started a [Vite 5 Discussion](https://github.com/vitejs/vite/discussions/12466) to gather early feedback.
+Nous avons décidé de faire une seule majeure Vite cette année en alignant avec la [EOL de Node.js 16](https://endoflife.date/nodejs) en septembre, abandonnant le support pour les deux versions de Node.js 14 et 16. Si vous souhaitez participer, nous avons commencé un [Discussion sur Vite 5](https://github.com/vitejs/vite/discussions/12466) pour collecter des retombées.
diff --git a/docs/blog/announcing-vite4.md b/docs/blog/announcing-vite4.md
index f17bca9..40872f5 100644
--- a/docs/blog/announcing-vite4.md
+++ b/docs/blog/announcing-vite4.md
@@ -1,7 +1,7 @@
---
-title: Vite 4.0 is out!
+title: Vite 4.0 est sorti !
author:
- name: The Vite Team
+ name: L'équipe Vite
date: 2022-12-09
sidebar: false
head:
@@ -10,131 +10,131 @@ head:
content: website
- - meta
- property: og:title
- content: Announcing Vite 4
+ content: Annonce de Vite 4
- - meta
- property: og:image
- content: https://vite.dev/og-image-announcing-vite4.png
+ content: https://fr.vite.dev/og-image-announcing-vite4.png
- - meta
- property: og:url
- content: https://vite.dev/blog/announcing-vite4
+ content: https://fr.vite.dev/blog/announcing-vite4
- - meta
- property: og:description
- content: Vite 4 Release Announcement
+ content: Annonce de la sortie de Vite 4
- - meta
- name: twitter:card
content: summary_large_image
---
-# Vite 4.0 is out!
+# Vite 4.0 est sorti !
-_December 9, 2022_ - Check out the [Vite 5.0 announcement](./announcing-vite5.md)
+_9 décembre 2022_ - Voir l'annonce de la [sortie de Vite 5.0](./announcing-vite5.md)
-Vite 3 [was released](./announcing-vite3.md) five months ago. npm downloads per week have gone from 1 million to 2.5 million since then. The ecosystem has matured too, and continues to grow. In this year's [Jamstack Conf survey](https://twitter.com/vite_js/status/1589665610119585793), usage among the community jumped from 14% to 32% while keeping a high 9.7 satisfaction score. We saw the stable releases of [Astro 1.0](https://astro.build/), [Nuxt 3](https://v3.nuxtjs.org/), and other Vite-powered frameworks that are innovating and collaborating: [SvelteKit](https://kit.svelte.dev/), [Solid Start](https://www.solidjs.com/blog/introducing-solidstart), [Qwik City](https://qwik.builder.io/qwikcity/overview/). Storybook announced first-class support for Vite as one of its main features for [Storybook 7.0](https://storybook.js.org/blog/first-class-vite-support-in-storybook/). Deno now [supports Vite](https://www.youtube.com/watch?v=Zjojo9wdvmY). [Vitest](https://vitest.dev) adoption is exploding, it will soon represent half of Vite's npm downloads. Nx is also investing in the ecosystem, and [officially supports Vite](https://nx.dev/packages/vite).
+Vite 3 [a été publié](./announcing-vite3.md) il y a cinq mois. Les téléchargements de npm par semaine sont passés de 1 million à 2,5 millions depuis. L'écosystème a également évolué, et continue de grandir. Dans le [sondage de Jamstack Conf](https://twitter.com/vite_js/status/1589665610119585793), l'utilisation par la communauté a grimpé de 14% à 32% tout en maintenant une note de satisfaction de 9,7. Nous avons vu les versions stables de [Astro 1.0](https://astro.build/), [Nuxt 3](https://v3.nuxtjs.org/), et d'autres frameworks Vite-alimentés qui innovent et collaborent : [SvelteKit](https://kit.svelte.dev/), [Solid Start](https://www.solidjs.com/blog/introducing-solidstart), [Qwik City](https://qwik.builder.io/qwikcity/overview/). Storybook a annoncé le support officiel de Vite comme une de ses fonctionnalités principales pour [Storybook 7.0](https://storybook.js.org/blog/first-class-vite-support-in-storybook/). Deno [supporte maintenant Vite](https://www.youtube.com/watch?v=Zjojo9wdvmY). L'adoption de [Vitest](https://vitest.dev) explose, elle représentera bientôt la moitié des téléchargements de Vite sur npm. Nx investit également dans l'écosystème, et [officiellement supporte Vite](https://nx.dev/packages/vite).
-[](https://viteconf.org/2022/replay)
+[](https://viteconf.org/2022/replay)
-As a showcase of the growth Vite and related projects have experienced, the Vite ecosystem gathered on October 11th at [ViteConf 2022](https://viteconf.org/2022/replay). We saw representatives from the main web framework and tools tell stories of innovation and collaboration. And in a symbolic move, the Rollup team choose that exact day to release [Rollup 3](https://rollupjs.org).
+Pour illustrer la croissance que Vite et les projets associés ont expérimentée, l'écosystème Vite s'est réuni le 11 octobre à la [ViteConf 2022](https://viteconf.org/2022/replay). Nous avons vu des représentants des principaux frameworks web et outils raconter des histoires d'innovation et de collaboration. Et dans un mouvement symbolique, l'équipe de Rollup a choisi exactement ce jour pour publier [Rollup 3](https://rollupjs.org).
-Today, the Vite [team](https://vite.dev/team) with the help of our ecosystem partners, is happy to announce the release of Vite 4, powered during build time by Rollup 3. We've worked with the ecosystem to ensure a smooth upgrade path for this new major. Vite is now using [Rollup 3](https://github.com/vitejs/vite/issues/9870), which allowed us to simplify Vite's internal asset handling and has many improvements. See the [Rollup 3 release notes here](https://github.com/rollup/rollup/releases/tag/v3.0.0).
+Aujourd'hui, l'équipe Vite, avec l'aide de nos partenaires de l'écosystème, est heureuse d'annoncer la sortie de Vite 4, alimentée par Rollup 3 lors du build. Nous avons travaillé avec l'écosystème pour assurer une mise à niveau fluide pour cette nouvelle version majeure. Vite utilise maintenant [Rollup 3](https://github.com/vitejs/vite/issues/9870), ce qui nous a permis de simplifier le traitement des assets de Vite et a apporté de nombreuses améliorations. Voir les notes de la [sortie de Rollup 3 ici](https://github.com/rollup/rollup/releases/tag/v3.0.0).
-
+
-Quick links:
+Liens rapides :
- [Docs](/)
-- [Migration Guide](https://v4.vite.dev/guide/migration.html)
+- [Guide de migration](https://v4.vite.dev/guide/migration.html)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#400-2022-12-09)
-Docs in other languages:
+Docs dans d'autres langues :
- [简体中文](https://cn.vite.dev/)
- [日本語](https://ja.vite.dev/)
- [Español](https://es.vite.dev/)
-If you recently started using Vite, we suggest reading the [Why Vite Guide](https://vite.dev/guide/why.html) and checking out [the Getting Started](https://vite.dev/guide/) and [Features guide](https://vite.dev/guide/features). If you want to get involved, contributions are welcome at [GitHub](https://github.com/vitejs/vite). Almost [700 collaborators](https://github.com/vitejs/vite/graphs/contributors) have contributed to Vite. Follow the updates on [Twitter](https://twitter.com/vite_js) and [Mastodon](https://webtoo.ls/@vite), or join collaborate with others on our [Discord community](http://chat.vite.dev/).
+Si vous avez commencé à utiliser Vite récemment, nous vous suggérons de lire le [Guide pourquoi Vite](https://fr.vite.dev/guide/why.html) et de consulter le [guide de démarrage](https://fr.vite.dev/guide/) et le [guide des fonctionnalités](https://fr.vite.dev/guide/features). Si vous souhaitez participer, les contributions sont les bienvenues sur [GitHub](https://github.com/vitejs/vite). Environ [700 contributeurs](https://github.com/vitejs/vite/graphs/contributors) ont contribué à Vite. Suivez les mises à jour sur [Twitter](https://twitter.com/vite_js) et [Mastodon](https://webtoo.ls/@vite), ou rejoignez la communauté pour collaborer avec d'autres sur notre [communauté Discord](http://chat.vite.dev/).
-## Start playing with Vite 4
+## Débuter avec Vite 4
-Use `pnpm create vite` to scaffold a Vite project with your preferred framework, or open a started template online to play with Vite 4 using [vite.new](https://vite.new).
+Utilisez `pnpm create vite` pour créer un projet Vite avec votre framework préféré, ou ouvrez un modèle de démarrage en ligne pour jouer avec Vite 4 en utilisant [vite.new](https://vite.new).
-You can also run `pnpm create vite-extra` to get access to templates from other frameworks and runtimes (Solid, Deno, SSR, and library starters). `create vite-extra` templates are also available when you run `create vite` under the `Others` option.
+Vous pouvez également exécuter `pnpm create vite-extra` pour accéder aux modèles de démarrage de d'autres frameworks et runtimes (Solid, Deno, SSR, et modèles de bibliothèque). Les modèles `create vite-extra` sont également disponibles lorsque vous exécutez `create vite` sous l'option `Others`.
-Note that Vite starter templates are intended to be used as a playground to test Vite with different frameworks. When building your next project, we recommend reaching out to the starters recommended by each framework. Some frameworks now redirect in `create vite` to their starters too (`create-vue` and `Nuxt 3` for Vue, and `SvelteKit` for Svelte).
+Notez que les modèles de démarrage Vite sont conçus pour être utilisés comme un terrain de jeu pour tester Vite avec différents frameworks. Lorsque vous construisez votre prochain projet, nous vous recommandons de choisir les modèles de démarrage recommandés par chaque framework. Certains frameworks redirigent maintenant dans `create vite` vers leurs modèles (`create-vue` et `Nuxt 3` pour Vue, et `SvelteKit` pour Svelte).
-## New React plugin using SWC during development
+## Nouveau plugin React utilisant SWC lors du développement
-[SWC](https://swc.rs/) is now a mature replacement for [Babel](https://babeljs.io/), especially in the context of React projects. SWC's React Fast Refresh implementation is a lot faster than Babel, and for some projects, it is now a better alternative. From Vite 4, two plugins are available for React projects with different tradeoffs. We believe that both approaches are worth supporting at this point, and we'll continue to explore improvements to both plugins in the future.
+[SWC](https://swc.rs/) est maintenant un remplaçant mature pour [Babel](https://babeljs.io/), surtout dans le contexte des projets React. L'implémentation de Fast Refresh de SWC est beaucoup plus rapide que Babel, et pour certains projets, il est maintenant une meilleure alternative. Dans Vite 4, deux plugins sont disponibles pour les projets React avec différents compromis. Nous croyons que les deux approches sont devenues nécessaires à ce stade, et nous continuerons à explorer les améliorations de ces deux plugins dans le futur.
### @vitejs/plugin-react
-[@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react) is a plugin that uses esbuild and Babel, achieving fast HMR with a small package footprint and the flexibility of being able to use the Babel transform pipeline.
+[@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react) est un plugin qui utilise esbuild et Babel, atteignant un HMR rapide avec un faible encombrement de package et la flexibilité de pouvoir utiliser le pipeline de transformation de Babel.
-### @vitejs/plugin-react-swc (new)
+### @vitejs/plugin-react-swc (nouveau)
-[@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) is a new plugin that uses esbuild during build, but replaces Babel with SWC during development. For big projects that don't require non-standard React extensions, cold start and Hot Module Replacement (HMR) can be significantly faster.
+[@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) est un nouveau plugin qui utilise esbuild lors du build, mais remplace Babel par SWC lors du développement. Pour les gros projets qui n'ont pas besoin d'extensions React non standard, le démarrage froid et le remplacement de modules (HMR) peuvent être significativement plus rapides.
-## Browser Compatibility
+## Compatibilité avec les navigateurs
-The modern browser build now targets `safari14` by default for wider ES2020 compatibility. This means that modern builds can now use [`BigInt`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt) and that the [nullish coalescing operator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing) isn't transpiled anymore. If you need to support older browsers, you can add [`@vitejs/plugin-legacy`](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) as usual.
+Le build pour les navigateurs modernes cible maintenant `safari14` par défaut pour une compatibilité ES2020 plus large. Cela signifie que les builds modernes peuvent maintenant utiliser [`BigInt`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt) et que l'opérateur [nullish coalescing](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing) n'est plus transpilé. Si vous avez besoin de supporter des navigateurs plus anciens, vous pouvez ajouter [`@vitejs/plugin-legacy`](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) comme d'habitude.
-## Importing CSS as a String
+## Importation de CSS en tant que chaîne
-In Vite 3, importing the default export of a `.css` file could introduce a double loading of CSS.
+Dans Vite 3, l'importation de l'exportation par défaut d'un fichier `.css` pouvait introduire un double chargement de CSS.
```ts
import cssString from './global.css'
```
-This double loading could occur since a `.css` file will be emitted and it's likely that the CSS string will also be used by the application code — for example, injected by the framework runtime. From Vite 4, the `.css` default export [has been deprecated](https://github.com/vitejs/vite/issues/11094). The `?inline` query suffix modifier needs to be used in this case, as that doesn't emit the imported `.css` styles.
+Cela pouvait survenir car un fichier `.css` était émis et il était probable que la chaîne CSS était également utilisée par le code de l'application — par exemple, injectée par le runtime du framework. Depuis Vite 4, l'exportation par défaut d'un fichier `.css` [a été dépréciée](https://github.com/vitejs/vite/issues/11094). Le suffixe de requête `?inline` doit être utilisé dans ce cas, car cela ne génère pas les styles importés `.css`.
```ts
import stuff from './global.css?inline'
```
-Learn more in the [Migration Guide](https://v4.vite.dev/guide/migration.html).
+En savoir plus dans le [Guide de migration](https://v4.vite.dev/guide/migration.html).
-## Environment Variables
+## Variables d'environnement
-Vite now uses `dotenv` 16 and `dotenv-expand` 9 (previously `dotenv` 14 and `dotenv-expand` 5). If you have a value including `#` or `` ` ``, you will need to wrap them with quotes.
+Vite utilise maintenant `dotenv` 16 et `dotenv-expand` 9 (précédemment `dotenv` 14 et `dotenv-expand` 5). Si vous avez une valeur incluant `#` ou `` ` ``, vous devrez l'entourer de guillemets.
```diff
-VITE_APP=ab#cd`ef
+VITE_APP="ab#cd`ef"
```
-For more details, see the [`dotenv`](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) and [`dotenv-expand` changelog](https://github.com/motdotla/dotenv-expand/blob/master/CHANGELOG.md).
+Pour plus de détails, voir le [changelog de `dotenv`](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md) et le [changelog de `dotenv-expand`](https://github.com/motdotla/dotenv-expand/blob/master/CHANGELOG.md).
-## Other Features
+## Autres fonctionnalités
-- CLI Shortcuts (press `h` during dev to see them all) ([#11228](https://github.com/vitejs/vite/pull/11228))
-- Support for patch-package when pre bundling dependencies ([#10286](https://github.com/vitejs/vite/issues/10286))
-- Cleaner build logs output ([#10895](https://github.com/vitejs/vite/issues/10895)) and switch to `kB` to align with browser dev tools ([#10982](https://github.com/vitejs/vite/issues/10982))
-- Improved error messages during SSR ([#11156](https://github.com/vitejs/vite/issues/11156))
+- Raccourcis de CLI (appuyez sur `h` pendant le développement pour voir tous les raccourcis) ([#11228](https://github.com/vitejs/vite/pull/11228))
+- Support pour `patch-package` lors du pré-bundling des dépendances ([#10286](https://github.com/vitejs/vite/issues/10286))
+- Logs de build plus propre ([#10895](https://github.com/vitejs/vite/issues/10895)) et switch vers `kB` pour aligner avec les outils de développement du navigateur ([#10982](https://github.com/vitejs/vite/issues/10982))
+- Messages d'erreur améliorés lors du SSR ([#11156](https://github.com/vitejs/vite/issues/11156))
-## Reduced Package Size
+## Taille du package réduite
-Vite cares about its footprint, to speed up installation, especially in the use case of playgrounds for documentation and reproductions. And once more, this major brings improvements in Vite's package size. Vite 4 install size is 23% smaller compared to vite 3.2.5 (14.1 MB vs 18.3 MB).
+Vite s'occupe de sa taille, pour accélérer l'installation, surtout dans le cas de terrains de jeu pour la documentation et la reproduction. Encore une fois, cette majeure apporte des améliorations dans la taille du package de Vite. La taille de l'installation de Vite 4 est 23% plus petite par rapport à vite 3.2.5 (14.1 MB vs 18.3 MB).
-## Upgrades to Vite Core
+## Améliorations de Vite Core
-[Vite Core](https://github.com/vitejs/vite) and [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) continue to evolve to provide a better experience to maintainers and collaborators and to ensure that Vite development scales to cope with the growth in the ecosystem.
+[Vite Core](https://github.com/vitejs/vite) et [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) continuent d'évoluer pour fournir une meilleure expérience aux mainteneurs et aux collaborateurs et pour garantir que le développement de Vite s'adapte à la croissance de l'écosystème.
-### Framework plugins out of core
+### Plugins de framework hors core
-[`@vitejs/plugin-vue`](https://github.com/vitejs/vite-plugin-vue) and [`@vitejs/plugin-react`](https://github.com/vitejs/vite-plugin-react) have been part of Vite core monorepo since the first versions of Vite. This helped us to get a close feedback loop when making changes as we were getting both Core and the plugins tested and released together. With [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) we can get this feedback with these plugins developed on independent repositories, so from Vite 4, [they have been moved out of the Vite core monorepo](https://github.com/vitejs/vite/pull/11158). This is meaningful for Vite's framework-agnostic story and will allow us to build independent teams to maintain each of the plugins. If you have bugs to report or features to request, please create issues on the new repositories moving forward: [`vitejs/vite-plugin-vue`](https://github.com/vitejs/vite-plugin-vue) and [`vitejs/vite-plugin-react`](https://github.com/vitejs/vite-plugin-react).
+[`@vitejs/plugin-vue`](https://github.com/vitejs/vite-plugin-vue) et [`@vitejs/plugin-react`](https://github.com/vitejs/vite-plugin-react) sont des plugins de base de Vite depuis les premières versions de Vite. Cela nous a permis de maintenir une boucle de feedback étroite lorsque nous faisions des changements, car nous obtenions à la fois le noyau et les plugins testés et publiés ensemble. Avec [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci), nous pouvons obtenir ce feedback avec ces plugins développés sur des dépôts indépendants, donc depuis Vite 4, [ils ont été déplacés hors du monorepo de Vite core](https://github.com/vitejs/vite/pull/11158). Cela est significatif pour l'histoire de Vite sans framework, et permettra de construire des équipes indépendantes pour maintenir chaque plugin. Si vous avez des bugs à signaler ou des fonctionnalités à demander, veuillez créer des tickets sur les nouveaux dépôts : [`vitejs/vite-plugin-vue`](https://github.com/vitejs/vite-plugin-vue) et [`vitejs/vite-plugin-react`](https://github.com/vitejs/vite-plugin-react).
-### vite-ecosystem-ci improvements
+### Améliorations de vite-ecosystem-ci
-[vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) extends Vite's CI by providing on-demand status reports on the state of the CIs of [most major downstream projects](https://github.com/vitejs/vite-ecosystem-ci/tree/main/tests). We run vite-ecosystem-ci three times a week against Vite's main branch and receive timely reports before introducing a regression. Vite 4 will soon be compatible with most projects using Vite, which already prepared branches with the needed changes and will be releasing them in the next few days. We are also able to run vite-ecosystem-ci on-demand on PRs using `/ecosystem-ci run` in a comment, allowing us to know [the effect of changes](https://github.com/vitejs/vite/pull/11269#issuecomment-1343365064) before they hit main.
+[vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci) étend la CI de Vite en fournissant des rapports de statut sur-demande sur l'état des CIs de [la plupart des principaux projets en aval](https://github.com/vitejs/vite-ecosystem-ci/tree/main/tests). Nous exécutons vite-ecosystem-ci trois fois par semaine contre le main de Vite et recevons des rapports ponctuels avant d'introduire une régression. Vite 4 sera compatible avec la plupart des projets utilisant Vite, qui ont déjà préparé les branches avec les modifications nécessaires et publieront des versions compatibles dans les jours à venir. Nous sommes également en mesure d'exécuter vite-ecosystem-ci sur-demande sur les PRs en utilisant `/ecosystem-ci run` dans un commentaire, ce qui nous permet de connaître [l'effet des changements](https://github.com/vitejs/vite/pull/11269#issuecomment-1343365064) avant qu'ils soient mergés dans le main.
-## Acknowledgments
+## Remerciements
-Vite 4 wouldn't be possible without uncountable hours of work by Vite contributors, many of them maintainers of downstream projects and plugins, and the efforts of the [Vite Team](/team). All of us have worked together to improve Vite's DX once more, for every framework and app using it. We're grateful to be able to improve a common base for such a vibrant ecosystem.
+Vite 4 ne serait pas possible sans un nombre d'heure de travail incalculable par les contributeurs de Vite, beaucoup d'entre eux étant mainteneurs de projets en aval et de plugins, et les efforts du [Vite Team](/team). Nous avons travaillé ensemble pour améliorer le DX de Vite une fois de plus, pour chaque framework et app utilisant Vite. Nous sommes reconnaissants d'être en mesure d'améliorer une base commune pour un tel écosystème.
-We're also thankful to individuals and companies sponsoring the Vite team, and companies investing directly in Vite's future: [@antfu7](https://twitter.com/antfu7)'s work on Vite and the ecosystem is part of his job at [Nuxt Labs](https://nuxtlabs.com/), [Astro](https://astro.build) is funding [@bluwyoo](https://twitter.com/bluwyoo)'s' Vite core work, and [StackBlitz](https://stackblitz.com/) hires [@patak_dev](https://twitter.com/patak_dev) to work full time on Vite.
+Nous sommes également reconnaissants aux individus et entreprises qui soutiennent l'équipe Vite, et les entreprises qui investissent directement dans le futur de Vite : le travail de [@antfu7](https://twitter.com/antfu7) sur Vite et l'écosystème est une partie de son travail à [Nuxt Labs](https://nuxtlabs.com/), [Astro](https://astro.build) finance le travail de [@bluwyoo](https://twitter.com/bluwyoo) sur le noyau de Vite, et [StackBlitz](https://stackblitz.com/) emploie [@patak_dev](https://twitter.com/patak_dev) pour travailler à plein temps sur Vite.
-## Next steps
+## Prochaines étapes
-Our immediate focus would be on triaging newly opened issues to avoid disruption by possible regressions. If you would like to get involved and help us improve Vite, we suggest starting with issues triaging. Join [our Discord](https://chat.vite.dev) and reach out on the `#contributing` channel. Polish our `#docs` story, and `#help` others. We need to continue to build a helpful and welcoming community for the next wave of users, as Vite's adoption continues to grow.
+Notre focus immédiat est de trier les nouveaux bugs ouverts pour éviter les régressions. Si vous souhaitez participer et nous aider à améliorer Vite, nous vous suggérons de commencer par le triage des bugs. Rejoignez [notre Discord](https://chat.vite.dev) et atteignez-nous sur le canal `#contributing`. Améliorez notre `#docs` et `#help`pour aider les autres. Nous devons continuer à construire une communauté utile et accueillante pour la prochaine vague d'utilisateurs, car l'adoption de Vite continue de croître.
-There are a lot of open fronts to keep improving the DX of everyone that has chosen Vite to power their frameworks and develop their apps. Onwards!
+Il y a beaucoup de fronts à améliorer pour améliorer le DX de tout ceux qui ont choisi Vite pour alimenter leurs frameworks et développer leurs apps. En avant!
diff --git a/docs/blog/announcing-vite5-1.md b/docs/blog/announcing-vite5-1.md
index bbb24a8..a153b50 100644
--- a/docs/blog/announcing-vite5-1.md
+++ b/docs/blog/announcing-vite5-1.md
@@ -1,7 +1,7 @@
---
-title: Vite 5.1 is out!
+title: Vite 5.1 est sorti !
author:
- name: The Vite Team
+ name: L'équipe Vite
date: 2024-02-08
sidebar: false
head:
@@ -10,125 +10,125 @@ head:
content: website
- - meta
- property: og:title
- content: Announcing Vite 5.1
+ content: Annonce de Vite 5.1
- - meta
- property: og:image
- content: https://vite.dev/og-image-announcing-vite5-1.png
+ content: https://fr.vite.dev/og-image-announcing-vite5-1.png
- - meta
- property: og:url
- content: https://vite.dev/blog/announcing-vite5-1
+ content: https://fr.vite.dev/blog/announcing-vite5-1
- - meta
- property: og:description
- content: Vite 5.1 Release Announcement
+ content: Annonce de la sortie de Vite 5.1
- - meta
- name: twitter:card
content: summary_large_image
---
-# Vite 5.1 is out!
+# Vite 5.1 est sorti !
-_February 8, 2024_
+_8 février 2024_
-
+
-Vite 5 [was released](./announcing-vite5.md) last November, and it represented another big leap for Vite and the ecosystem. A few weeks ago we celebrated 10 million weekly npm downloads and 900 contributors to the Vite repo. Today, we're excited to announce the release of Vite 5.1.
+Vite 5 [a été publié](./announcing-vite5.md) en novembre dernier, et représentait un grand pas pour Vite et l'écosystème. Quelques semaines plus tard, nous célébrons les 10 millions de téléchargements hebdomadaires npm et 900 contributeurs au dépôt Vite. Aujourd'hui, nous sommes heureux d'annoncer la sortie de Vite 5.1.
-Quick links: [Docs](/), [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#510-2024-02-08)
+Liens rapides : [Docs](/), [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#510-2024-02-08)
-Docs in other languages: [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/), [한국어](https://ko.vite.dev/), [Deutsch](https://de.vite.dev/)
+Docs dans d'autres langues : [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/), [한국어](https://ko.vite.dev/), [Deutsch](https://de.vite.dev/)
-Try Vite 5.1 online in StackBlitz: [vanilla](https://vite.new/vanilla-ts), [vue](https://vite.new/vue-ts), [react](https://vite.new/react-ts), [preact](https://vite.new/preact-ts), [lit](https://vite.new/lit-ts), [svelte](https://vite.new/svelte-ts), [solid](https://vite.new/solid-ts), [qwik](https://vite.new/qwik-ts).
+Essayez Vite 5.1 en ligne dans StackBlitz : [vanilla](https://vite.new/vanilla-ts), [vue](https://vite.new/vue-ts), [react](https://vite.new/react-ts), [preact](https://vite.new/preact-ts), [lit](https://vite.new/lit-ts), [svelte](https://vite.new/svelte-ts), [solid](https://vite.new/solid-ts), [qwik](https://vite.new/qwik-ts).
-If you're new to Vite, we suggest reading first the [Getting Started](/guide/) and [Features](/guide/features) guides.
+Si vous êtes nouveau dans Vite, nous vous suggérons de lire d'abord les guides [Débuter](/guide/) et les [Fonctionnalités](/guide/features).
-To stay up to date, follow us on [X](https://x.com/vite_js) or [Mastodon](https://webtoo.ls/@vite).
+Pour rester à jour, suivez-nous sur [X](https://x.com/vite_js) ou [Mastodon](https://webtoo.ls/@vite).
-## Vite Runtime API
+## API de runtime de Vite
-Vite 5.1 adds experimental support for a new Vite Runtime API. It allows running any code by processing it with Vite plugins first. It is different from `server.ssrLoadModule` because the runtime implementation is decoupled from the server. This lets library and framework authors implement their own layer of communication between the server and the runtime. This new API is intended to replace Vite's current SSR primitives once it is stable.
+Vite 5.1 ajoute un support expérimental pour une nouvelle API de runtime de Vite. Elle permet d'exécuter du code en le traitant avec des plugins Vite. Elle est différente de `server.ssrLoadModule` car l'implémentation du runtime est découplée du serveur. Cela permet aux auteurs de bibliothèques et de frameworks d'implémenter leur propre couche de communication entre le serveur et le runtime. Cette nouvelle API est destinée à remplacer les primitives SSR actuelles de Vite une fois qu'elles seront stables.
-The new API brings many benefits:
+Cette nouvelle API apporte de nombreux avantages :
-- Support for HMR during SSR.
-- It is decoupled from the server, so there is no limit on how many clients can use a single server - every client has its own module cache (you can even communicate with it how you want - using message channel/fetch call/direct function call/websocket).
-- It doesn't depend on any node/bun/deno built-in APIs, so it can run in any environment.
-- It's easy to integrate with tools that have their own mechanism to run code (you can provide a runner to use `eval` instead of `new AsyncFunction` for example).
+- Support pour HMR lors de SSR.
+- Elle est découplée du serveur, donc il n'y a pas de limite sur le nombre de clients qui peuvent utiliser un serveur unique - chaque client a son propre cache de modules (vous pouvez même communiquer avec lui comme vous le souhaitez - en utilisant un canal de message/appel de fetch/appel de fonction directe/websocket).
+- Elle ne dépend d'aucune API de node/bun/deno intégrée, donc elle peut s'exécuter dans n'importe quel environnement.
+- Elle est facile à intégrer avec des outils qui ont leur propre mécanisme pour exécuter du code (vous pouvez fournir un runner pour utiliser `eval` à la place de `new AsyncFunction` par exemple).
-The initial idea [was proposed by Pooya Parsa](https://github.com/nuxt/vite/pull/201) and implemented by [Anthony Fu](https://github.com/antfu) as the [vite-node](https://github.com/vitest-dev/vitest/tree/main/packages/vite-node#readme) package to [power Nuxt 3 Dev SSR](https://antfu.me/posts/dev-ssr-on-nuxt) and later also used as the base for [Vitest](https://vitest.dev). So the general idea of vite-node has been battle-tested for quite some time now. This is a new iteration of the API by [Vladimir Sheremet](https://github.com/sheremet-va), who had already re-implemented vite-node in Vitest and took the learnings to make the API even more powerful and flexible when adding it to Vite Core. The PR was one year in the makings, you can see the evolution and discussions with ecosystem maintainers [here](https://github.com/vitejs/vite/issues/12165).
+L'idée initiale [a été proposée par Pooya Parsa](https://github.com/nuxt/vite/pull/201) et implémentée par [Anthony Fu](https://github.com/antfu) comme le package [vite-node](https://github.com/vitest-dev/vitest/tree/main/packages/vite-node#readme) pour [alimenter le SSR de Nuxt 3](https://antfu.me/posts/dev-ssr-on-nuxt) et a été également utilisée comme base pour [Vitest](https://vitest.dev). L'idée générale de vite-node a été testée pendant un certain temps maintenant. C'est une nouvelle itération de l'API par [Vladimir Sheremet](https://github.com/sheremet-va), qui avait déjà implémenté vite-node dans Vitest et a pris les enseignements pour rendre l'API encore plus puissante et flexible lorsqu'elle a été ajoutée au noyau de Vite. La PR a été en cours pendant un an, vous pouvez voir l'évolution et les discussions avec les mainteneurs de l'écosystème [ici](https://github.com/vitejs/vite/issues/12165).
::: info
-The Vite Runtime API evolved into the Module Runner API, released in Vite 6 as part of the [Environment API](/guide/api-environment).
+L'API de runtime de Vite a évolué en API de runner de module, publiée dans Vite 6 comme partie de l'API [Environment](/guide/api-environment).
:::
-## Features
+## Fonctionnalités
-### Improved support for `.css?url`
+### Amélioration du support pour `.css?url`
-Import CSS files as URLs now works reliably and correctly. This was the last remaining hurdle in Remix's move to Vite. See ([#15259](https://github.com/vitejs/vite/issues/15259)).
+Importer des fichiers CSS en tant que URL fonctionne maintenant de manière fiable et correcte. C'était la dernière étape pour Remix pour passer à Vite. Voir ([#15259](https://github.com/vitejs/vite/issues/15259)).
-### `build.assetsInlineLimit` now supports a callback
+### `build.assetsInlineLimit` supporte maintenant un callback
-Users can now [provide a callback](/config/build-options.html#build-assetsinlinelimit) that returns a boolean to opt-in or opt-out of inlining for specific assets. If `undefined` is returned, the default logic applies. See ([#15366](https://github.com/vitejs/vite/issues/15366)).
+Les utilisateurs peuvent maintenant [fournir un callback](/config/build-options.html#build-assetsinlinelimit) qui retourne un booléen pour l'opt-in ou l'opt-out de l'inlining pour des assets spécifiques. Si `undefined` est retourné, la logique par défaut s'applique. Voir ([#15366](https://github.com/vitejs/vite/issues/15366)).
-### Improved HMR for circular import
+### Amélioration du HMR pour les imports circulaires
-In Vite 5.0, accepted modules within circular imports always triggered a full page reload even if they can be handled fine in the client. This is now relaxed to allow HMR to apply without a full page reload, but if any error happens during HMR, the page will be reloaded. See ([#15118](https://github.com/vitejs/vite/issues/15118)).
+Dans Vite 5.0, les modules acceptés dans les imports circulaires ont toujours déclenché un rechargement de page complet même si elles peuvent être gérées correctement dans le client. Cela est maintenant allegé pour permettre le HMR sans rechargement de page, mais si une erreur se produit pendant le HMR, la page sera rechargée. Voir ([#15118](https://github.com/vitejs/vite/issues/15118)).
-### Support `ssr.external: true` to externalize all SSR packages
+### Support de `ssr.external: true` pour externaliser tous les packages SSR
-Historically, Vite externalizes all packages except for linked packages. This new option can be used to force externalize all packages including linked packages too. This is handy in tests within monorepos where we want to emulate the usual case of all packages externalized, or when using `ssrLoadModule` to load an arbitrary file and we want to always external packages as we don't care about HMR. See ([#10939](https://github.com/vitejs/vite/issues/10939)).
+Historiquement, Vite externalise tous les packages sauf les packages liés. Cette nouvelle option peut être utilisée pour forcer l'externalisation de tous les packages, y compris les packages liés. C'est pratique dans les tests dans des monorepos où nous voulons simuler le cas habituel de tous les packages externalisés, ou lorsque nous utilisons `ssrLoadModule` pour charger un fichier arbitraire et que nous voulons toujours externaliser les packages comme nous ne nous soucions pas de HMR. Voir ([#10939](https://github.com/vitejs/vite/issues/10939)).
-### Expose `close` method in the preview server
+### Exposition de la méthode `close` dans le serveur de prévisualisation
-The preview server now exposes a `close` method, which will properly teardown the server including all opened socket connections. See ([#15630](https://github.com/vitejs/vite/issues/15630)).
+Le serveur de prévisualisation expose maintenant une méthode `close`, qui nettoie correctement le serveur y compris toutes les connexions de socket ouvertes. Voir ([#15630](https://github.com/vitejs/vite/issues/15630)).
-## Performance improvements
+## Améliorations de performance
-Vite keeps getting faster with each release, and Vite 5.1 is packed with performance improvements. We measured the loading time for 10K modules (25 level deep tree) using [vite-dev-server-perf](https://github.com/yyx990803/vite-dev-server-perf) for all minor versions from Vite 4.0. This is a good benchmark to measure the effect of Vite's bundle-less approach. Each module is a small TypeScript file with a counter and imports to other files in the tree, so this mostly measuring the time it takes to do the requests a separate modules. In Vite 4.0, loading 10K modules took 8 seconds on a M1 MAX. We had a breakthrough in [Vite 4.3 were we focused on performance](./announcing-vite4-3.md), and we were able to load them in 6.35 seconds. In Vite 5.1, we managed to do another performance leap. Vite is now serving the 10K modules in 5.35 seconds.
+Vite continue d'être plus rapide avec chaque version, et Vite 5.1 est packagé avec des améliorations de performance. Nous avons mesuré le temps de chargement pour 10K modules (arbre de 25 niveaux) en utilisant [vite-dev-server-perf](https://github.com/yyx990803/vite-dev-server-perf) pour toutes les versions mineures de Vite 4.0. C'est un bon benchmark pour mesurer l'effet de l'approche sans bundle de Vite. Chaque module est un petit fichier TypeScript avec un compteur et des imports vers d'autres fichiers dans l'arbre, donc cela mesure principalement le temps qu'il faut pour faire les requêtes pour des modules séparés. Dans Vite 4.0, le chargement de 10K modules prenait 8 secondes sur un M1 MAX. Nous avons eu une rupture dans [Vite 4.3 où nous nous sommes concentrés sur les performances](./announcing-vite4-3.md), et nous avons été en mesure de les charger en 6.35 secondes. Dans Vite 5.1, nous avons réussi une autre amélioration des performances. Vite est maintenant en mesure de servir les 10K modules en 5.35 secondes.
-
+
-The results of this benchmark run on Headless Puppeteer and are a good way to compare versions. They don't represent the time as experienced by users though. When running the same 10K modules in an Incognito window is Chrome, we have:
+Les résultats de cette exécution du benchmark sur Headless Puppeteer sont un bon moyen de comparer les versions. Ils ne représentent pas le temps comme expérimenté par les utilisateurs. Lorsque nous exécutons les mêmes 10K modules dans une fenêtre Incognito de Chrome, nous avons:
| 10K Modules | Vite 5.0 | Vite 5.1 |
| --------------------- | :------: | :------: |
-| Loading time | 2892ms | 2765ms |
-| Loading time (cached) | 2778ms | 2477ms |
-| Full reload | 2003ms | 1878ms |
-| Full reload (cached) | 1682ms | 1604ms |
+| Temps de chargement | 2892ms | 2765ms |
+| Temps de chargement (cache) | 2778ms | 2477ms |
+| Rechargement complet | 2003ms | 1878ms |
+| Rechargement complet (cache) | 1682ms | 1604ms |
-### Run CSS preprocessors in threads
+### Exécution des préprocesseurs CSS dans des threads
-Vite now has opt-in support for running CSS preprocessors in threads. You can enable it using [`css.preprocessorMaxWorkers: true`](/config/shared-options.html#css-preprocessormaxworkers). For a Vuetify 2 project, dev startup time was reduced by 40% with this feature enabled. There is [performance comparison for others setups in the PR](https://github.com/vitejs/vite/pull/13584#issuecomment-1678827918). See ([#13584](https://github.com/vitejs/vite/issues/13584)). [Give Feedback](https://github.com/vitejs/vite/discussions/15835).
+Vite a maintenant un support natif pour exécuter des préprocesseurs CSS dans des threads. Vous pouvez l'activer en utilisant [`css.preprocessorMaxWorkers: true`](/config/shared-options.html#css-preprocessormaxworkers). Pour un projet Vuetify 2, le temps de démarrage du dev a été réduit de 40% avec cette fonctionnalité activée. Il y a un [comparatif des performances pour d'autres configurations dans la PR](https://github.com/vitejs/vite/pull/13584#issuecomment-1678827918). Voir ([#13584](https://github.com/vitejs/vite/issues/13584)). [Faire un retour](https://github.com/vitejs/vite/discussions/15835).
-### New options to improve server cold starts
+### Nouvelles options pour améliorer les démarrages de serveur froids
-You can set `optimizeDeps.holdUntilCrawlEnd: false` to switch to a new strategy for deps optimization that may help in big projects. We're considering switching to this strategy by default in the future. [Give Feedback](https://github.com/vitejs/vite/discussions/15834). ([#15244](https://github.com/vitejs/vite/issues/15244))
+Vous pouvez définir `optimizeDeps.holdUntilCrawlEnd: false` pour basculer vers une nouvelle stratégie pour l'optimisation des dépendances qui peut aider dans les gros projets. Nous envisageons de basculer vers cette stratégie par défaut dans le futur. [Faire un retour](https://github.com/vitejs/vite/discussions/15834). ([#15244](https://github.com/vitejs/vite/issues/15244))
-### Faster resolving with cached checks
+### Résolution plus rapide avec les vérifications mises en cache
-The `fs.cachedChecks` optimization is now enabled by default. In Windows, `tryFsResolve` was ~14x faster with it, and resolving ids overall got a ~5x speed up in the triangle benchmark. ([#15704](https://github.com/vitejs/vite/issues/15704))
+L'optimisation `fs.cachedChecks` est maintenant activée par défaut. Dans Windows, `tryFsResolve` était ~14x plus rapide avec elle, et la résolution des ids a obtenu un gain de ~5x dans le benchmark triangle. ([#15704](https://github.com/vitejs/vite/issues/15704))
-### Internal performance improvements
+### Améliorations de performance internes
-The dev server had several incremental performance gains. A new middleware to short-circuit on 304 ([#15586](https://github.com/vitejs/vite/issues/15586)). We avoided `parseRequest` in hot paths ([#15617](https://github.com/vitejs/vite/issues/15617)). Rollup is now properly lazy loaded ([#15621](https://github.com/vitejs/vite/issues/15621))
+Le serveur de développement a eu plusieurs gains de performance incrémentiels. Un nouveau middleware pour court-circuiter sur 304 ([#15586](https://github.com/vitejs/vite/issues/15586)). Nous avons évité `parseRequest` dans les hot paths ([#15617](https://github.com/vitejs/vite/issues/15617)). Rollup est maintenant correctement lazy loadé ([#15621](https://github.com/vitejs/vite/issues/15621))
-## Deprecations
+## Dépréciations
-We continue to reduce Vite's API surface where possible to make the project maintainable long term.
+Nous continuons à réduire la surface d'API de Vite tant que possible pour rendre le projet maintenable à long terme.
-### Deprecated `as` option in `import.meta.glob`
+### Déprécié `as` option dans `import.meta.glob`
-The standard moved to [Import Attributes](https://github.com/tc39/proposal-import-attributes), but we don't plan to replace `as` with a new option at this point. Instead, it is recommended that the user switches to `query`. See ([#14420](https://github.com/vitejs/vite/issues/14420)).
+Le standard a migré vers [Import Attributes](https://github.com/tc39/proposal-import-attributes), mais nous n'envisageons pas de remplacer `as` avec une nouvelle option à ce stade. Au lieu de cela, il est recommandé que l'utilisateur bascule vers `query`. Voir ([#14420](https://github.com/vitejs/vite/issues/14420)).
-### Removed experimental build-time pre-bundling
+### Suppression du pré-bundling de build-time
-Build-time pre-bundling, an experimental feature added in Vite 3, is removed. With Rollup 4 switching its parser to native, and Rolldown being worked on, both the performance and the dev-vs-build inconsistency story for this feature are no longer valid. We want to continue improving dev/build consistency, and have concluded that using Rolldown for "prebundling during dev" and "production builds" is the better bet moving forward. Rolldown may also implement caching in a way that is a lot more efficient during build than deps prebundling. See ([#15184](https://github.com/vitejs/vite/issues/15184)).
+Build-time pre-bundling, une fonctionnalité expérimentale ajoutée dans Vite 3, est supprimée. Avec Rollup 4 qui bascule son analyseur vers natif, et Rollup qui est en cours de développement, les histoires de performance et de consistance entre le développement et la construction pour cette fonctionnalité ne sont plus valides. Nous voulons continuer à améliorer la consistance entre le développement et la construction, et avons conclu que l'utilisation de Rollup pour "pré-bundling pendant le développement" et "constructions de production" est la meilleure option pour l'avenir. Rollup peut également implémenter le caching de manière beaucoup plus efficace pendant la construction que le pré-bundling des dépendances. Voir ([#15184](https://github.com/vitejs/vite/issues/15184)).
-## Get Involved
+## Participer
-We are grateful to the [900 contributors to Vite Core](https://github.com/vitejs/vite/graphs/contributors), and the maintainers of plugins, integrations, tools, and translations that keeps pushing the ecosystem forward. If you're enjoying Vite, we invite you to participate and help us. Check out our [Contributing Guide](https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md), and jump into [triaging issues](https://github.com/vitejs/vite/issues), [reviewing PRs](https://github.com/vitejs/vite/pulls), answering questions at [GitHub Discussions](https://github.com/vitejs/vite/discussions) and helping others in the community in [Vite Land](https://chat.vite.dev).
+Nous sommes reconnaissants aux [900 contributeurs à Vite Core](https://github.com/vitejs/vite/graphs/contributors), et aux mainteneurs de plugins, intégrations, outils, et traductions qui poussent l'écosystème vers l'avant. Si vous appréciez Vite, nous vous invitons à participer et nous aider. Consultez notre [Guide de contribution](https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md), et jetez-vous dans [tri des tickets](https://github.com/vitejs/vite/issues), [revues de PRs](https://github.com/vitejs/vite/pulls), répondre aux questions sur [GitHub Discussions](https://github.com/vitejs/vite/discussions) et aider les autres dans la communauté dans [Vite Land](https://chat.vite.dev).
-## Acknowledgments
+## Remerciements
-Vite 5.1 is possible thanks to our community of contributors, maintainers in the ecosystem, and the [Vite Team](/team). A shout out to the individuals and companies sponsoring Vite development. [StackBlitz](https://stackblitz.com/), [Nuxt Labs](https://nuxtlabs.com/), and [Astro](https://astro.build) for hiring Vite team members. And also to the sponsors on [Vite's GitHub Sponsors](https://github.com/sponsors/vitejs), [Vite's Open Collective](https://opencollective.com/vite), and [Evan You's GitHub Sponsors](https://github.com/sponsors/yyx990803).
+Vite 5.1 est possible grâce à notre communauté de contributeurs, mainteneurs dans l'écosystème, et l'équipe [Vite](/team). Un remerciement tout particulieraux individus et entreprises qui soutiennent le développement de Vite. [StackBlitz](https://stackblitz.com/), [Nuxt Labs](https://nuxtlabs.com/), et [Astro](https://astro.build) ont embauché des membres de l'équipe Vite. Et aussi aux sponsors sur [GitHub Sponsors de Vite](https://github.com/sponsors/vitejs), [Open Collective de Vite](https://opencollective.com/vite), et [GitHub Sponsors d'Evan You](https://github.com/sponsors/yyx990803).
diff --git a/docs/blog/announcing-vite5.md b/docs/blog/announcing-vite5.md
index 0634638..d795dbc 100644
--- a/docs/blog/announcing-vite5.md
+++ b/docs/blog/announcing-vite5.md
@@ -1,7 +1,7 @@
---
-title: Vite 5.0 is out!
+title: Vite 5.0 est sorti !
author:
- name: The Vite Team
+ name: L'équipe Vite
date: 2023-11-16
sidebar: false
head:
@@ -10,41 +10,41 @@ head:
content: website
- - meta
- property: og:title
- content: Announcing Vite 5
+ content: Annonce de Vite 5
- - meta
- property: og:image
- content: https://vite.dev/og-image-announcing-vite5.png
+ content: https://fr.vite.dev/og-image-announcing-vite5.png
- - meta
- property: og:url
- content: https://vite.dev/blog/announcing-vite5
+ content: https://fr.vite.dev/blog/announcing-vite5
- - meta
- property: og:description
- content: Vite 5 Release Announcement
+ content: Annonce de la sortie de Vite 5
- - meta
- name: twitter:card
content: summary_large_image
---
-# Vite 5.0 is out!
+# Vite 5.0 est sorti !
-_November 16, 2023_
+_16 novembre 2023_
-
+
-Vite 4 [was released](./announcing-vite4.md) almost a year ago, and it served as a solid base for the ecosystem. npm downloads per week jumped from 2.5 million to 7.5 million, as projects keep building on a shared infrastructure. Frameworks continued to innovate, and on top of [Astro](https://astro.build/), [Nuxt](https://nuxt.com/), [SvelteKit](https://kit.svelte.dev/), [Solid Start](https://www.solidjs.com/blog/introducing-solidstart), [Qwik City](https://qwik.builder.io/qwikcity/overview/), between others, we saw new frameworks joining and making the ecosystem stronger. [RedwoodJS](https://redwoodjs.com/) and [Remix](https://remix.run/) switching to Vite paves the way for further adoption in the React ecosystem. [Vitest](https://vitest.dev) kept growing at an even faster pace than Vite. Its team has been hard at work and will soon [release Vitest 1.0](https://github.com/vitest-dev/vitest/issues/3596). The story of Vite when used with other tools such as [Storybook](https://storybook.js.org), [Nx](https://nx.dev), and [Playwright](https://playwright.dev) kept improving, and the same goes for environments, with Vite dev working both in [Deno](https://deno.com) and [Bun](https://bun.sh).
+Vite 4 [a été publié](./announcing-vite4.md) il y a un peu plus d'un an, et il a servi de base solide pour l'écosystème. Les téléchargements npm par semaine sont passés de 2,5 millions à 7,5 millions, car les projets continuent à construire sur une infrastructure partagée. Les frameworks ont continué à innover, et sur [Astro](https://astro.build/), [Nuxt](https://nuxt.com/), [SvelteKit](https://kit.svelte.dev/), [Solid Start](https://www.solidjs.com/blog/introducing-solidstart), [Qwik City](https://qwik.builder.io/qwikcity/overview/), entre autres, nous avons vu de nouveaux frameworks rejoindre et renforcer l'écosystème. [RedwoodJS](https://redwoodjs.com/) et [Remix](https://remix.run/) ont changé pour utiliser Vite, ce qui ouvre la voie à une adoption plus large dans l'écosystème React. [Vitest](https://vitest.dev) a continué à grandir à un rythme encore plus rapide que Vite. Son équipe a travaillé dur et [prévoit publier Vitest 1.0](https://github.com/vitest-dev/vitest/issues/3596) dans les semaines à venir. Le récit de Vite lorsqu'il est utilisé avec d'autres outils tels que [Storybook](https://storybook.js.org), [Nx](https://nx.dev), et [Playwright](https://playwright.dev) a continué à s'améliorer, et le même principe s'applique aux environnements, avec Vite dev fonctionnant dans [Deno](https://deno.com) et [Bun](https://bun.sh).
-We had the second edition of [ViteConf](https://viteconf.org/23/replay) a month ago, hosted by [StackBlitz](https://stackblitz.com). Like last year, most of the projects in the ecosystem got together to share ideas and connect to keep expanding the commons. We're also seeing new pieces complement the meta-framework tool belt like [Volar](https://volarjs.dev/) and [Nitro](https://nitro.unjs.io/). The Rollup team released [Rollup 4](https://rollupjs.org) that same day, a tradition Lukas started last year.
+Nous avons eu la deuxième édition de [ViteConf](https://viteconf.org/23/replay) il y a un mois, hébergée par [StackBlitz](https://stackblitz.com). Comme l'an passé, la plupart des projets de l'écosystème se sont réunis pour partager des idées et se connecter pour maintenir et étendre les ressources communes. Nous voyons également de nouvelles pièces complémentaires pour renforcer l'offre de l'outil de framework comme [Volar](https://volarjs.dev/) et [Nitro](https://nitro.unjs.io/). L'équipe Rollup a publié [Rollup 4](https://rollupjs.org) le même jour, une tradition commencée par Lukas l'an passé.
-Six months ago, Vite 4.3 [was released](./announcing-vite4.md). This release significantly improved the dev server performance. However, there is still ample room for improvement. At ViteConf, [Evan You unveiled Vite's long-term plan to work on Rolldown](https://www.youtube.com/watch?v=hrdwQHoAp0M), a Rust-port of Rollup with compatible APIs. Once it is ready, we intend to use it in Vite Core to take on the tasks of both Rollup and esbuild. This will mean a boost in build performance (and later on in dev performance too as we move perf-sensitive parts of Vite itself to Rust), and a big reduction of inconsistencies between dev and build. Rolldown is currently in early stages and the team is preparing to open source the codebase before the end of the year. Stay tuned!
+Six mois après, Vite 4.3 [a été publié](./announcing-vite4.md). Cette version a significativement amélioré les performances du serveur de développement. Cependant, il existe encore un grand espace pour l'amélioration. À la ViteConf, [Evan You a présenté le plan de long terme de Vite pour travailler sur Rolldown](https://www.youtube.com/watch?v=hrdwQHoAp0M), une version Rust de Rollup avec des API compatibles. Une fois prêt, nous prévoyons l'utiliser dans le noyau de Vite pour prendre en charge les tâches de Rollup et esbuild. Cela signifiera un boost dans les performances de build (et plus tard dans les performances de développement, car nous déplacerons les parties sensibles aux performances de Vite vers Rust), et une grande réduction des incohérences entre le développement et la construction. Rolldown est actuellement dans les premières étapes et l'équipe prépare le code source à la fin de l'année. Restez connecté !
-Today, we mark another big milestone in Vite's path. The Vite [team](/team), [contributors](https://github.com/vitejs/vite/graphs/contributors), and ecosystem partners, are excited to announce the release of Vite 5. Vite is now using [Rollup 4](https://github.com/vitejs/vite/pull/14508), which already represents a big boost in build performance. And there are also new options to improve your dev server performance profile.
+Aujourd'hui, nous marquons un autre grand point d'étape dans l'évolution de Vite. L'équipe [Vite](/team), les [contributeurs](https://github.com/vitejs/vite/graphs/contributors), et partenaires de l'écosystème, sont heureux de vous annoncer la sortie de Vite 5. Vite utilise maintenant [Rollup 4](https://github.com/vitejs/vite/pull/14508), ce qui représente un grand boost dans les performances de build. Et il y a également de nouvelles options pour améliorer le profil de performance de votre serveur de développement.
-Vite 5 focuses on cleaning up the API (removing deprecated features) and streamlines several features closing long-standing issues, for example switching `define` to use proper AST replacements instead of regexes. We also continue to take steps to future-proof Vite (Node.js 18+ is now required, and [the CJS Node API has been deprecated](/guide/migration#deprecate-cjs-node-api)).
+Vite 5 se concentre sur le nettoyage de l'API (suppression des fonctionnalités dépréciées) et simplifie plusieurs fonctionnalités en résolvant des problèmes longuement ouverts, par exemple en changeant `define` pour utiliser des remplacements AST appropriés plutôt que des regexes. Nous continuons également à prendre des mesures pour assurer la compatibilité future de Vite (Node.js 18+ est maintenant requis, et [l'API Node CJS a été dépréciée](/guide/migration#deprecate-cjs-node-api)).
Quick links:
- [Docs](/)
-- [Migration Guide](/guide/migration)
+- [Guide de migration](/guide/migration)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#500-2023-11-16)
Docs in other languages:
@@ -54,57 +54,57 @@ Docs in other languages:
- [Español](https://es.vite.dev/)
- [Português](https://pt.vite.dev/)
- [한국어](https://ko.vite.dev/)
-- [Deutsch](https://de.vite.dev/) (new translation!)
+- [Deutsch](https://de.vite.dev/) (nouvelle traduction!)
-If you're new to Vite, we suggest reading first the [Getting Started](/guide/) and [Features](/guide/features) guides.
+Si vous êtes nouveau sur Vite, nous vous suggérons de lire d'abord le guide [Débuter](/guide/) et celui des [Fonctionnalités](/guide/features).
-We appreciate the more than [850 contributors to Vite Core](https://github.com/vitejs/vite/graphs/contributors), and the maintainers and contributors of Vite plugins, integrations, tools, and translations that have helped us reach here. We encourage you to get involved and continue to improve Vite with us. You can learn more at our [Contributing Guide](https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md). To get started, we recommend [triaging issues](https://github.com/vitejs/vite/issues), [reviewing PRs](https://github.com/vitejs/vite/pulls), sending failing tests PRs based on open issues, and helping others in [Discussions](https://github.com/vitejs/vite/discussions) and Vite Land's [help forum](https://discord.com/channels/804011606160703521/1019670660856942652). You'll learn a lot along the way and have a smooth path to further contributions to the project. If you have doubts, join us on our [Discord community](http://chat.vite.dev/) and say hi on the [#contributing channel](https://discord.com/channels/804011606160703521/804439875226173480).
+Nous sommes reconnaissants aux plus de [850 contributeurs à Vite Core](https://github.com/vitejs/vite/graphs/contributors), et aux mainteneurs et contributeurs de plugins, intégrations, outils, et traductions qui nous ont permis d'arriver ici. Nous vous encourageons à participer et à continuer à améliorer Vite avec nous. Vous pouvez en savoir plus sur notre [Guide de contribution](https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md). Pour commencer, nous vous suggérons de [trier les tickets](https://github.com/vitejs/vite/issues), de [revoir les PR](https://github.com/vitejs/vite/pulls), d'envoyer des PR de tests en échec basés sur les tickets ouverts, et d'aider les autres dans [Discussions](https://github.com/vitejs/vite/discussions) et le [forum d'aide de Vite Land](https://discord.com/channels/804011606160703521/1019670660856942652). Vous apprendrez beaucoup de choses et aurez un chemin facile pour contribuer au projet. Si vous avez des doutes, rejoignez notre [communauté Discord](http://chat.vite.dev/) et dites-nous bonjour sur le canal [#contributing](https://discord.com/channels/804011606160703521/804439875226173480).
-To stay up to date, follow us on [X](https://twitter.com/vite_js) or [Mastodon](https://webtoo.ls/@vite).
+Pour rester à jour, suivez-nous sur [X](https://twitter.com/vite_js) ou [Mastodon](https://webtoo.ls/@vite).
-## Quick start with Vite 5
+## Démarrer avec Vite 5
-Use `pnpm create vite` to scaffold a Vite project with your preferred framework, or open a started template online to play with Vite 5 using [vite.new](https://vite.new). You can also run `pnpm create vite-extra` to get access to templates from other frameworks and runtimes (Solid, Deno, SSR, and library starters). `create vite-extra` templates are also available when you run `create vite` under the `Others` option.
+Utilisez `pnpm create vite` pour créer un projet Vite avec votre framework préféré, ou ouvrez un template commencé en ligne de commande pour jouer avec Vite 5 en utilisant [vite.new](https://vite.new). Vous pouvez également exécuter `pnpm create vite-extra` pour accéder aux templates de d'autres frameworks et runtimes (Solid, Deno, SSR, et starters de bibliothèques). Les templates `create vite-extra` sont également disponibles lorsque vous exécutez `create vite` sous l'option `Others`.
-Note that Vite starter templates are intended to be used as a playground to test Vite with different frameworks. When building your next project, we recommend reaching out to the starters recommended by each framework. Some frameworks now redirect in `create vite` to their starters too (`create-vue` and `Nuxt 3` for Vue, and `SvelteKit` for Svelte).
+Notez que les templates de démarrage de Vite sont conçus pour être utilisés comme un terrain de jeu pour tester Vite avec différents frameworks. Lorsque vous construisez votre prochain projet, nous vous recommandons de vous tourner vers les starters recommandés par chaque framework. Certains frameworks redirigent maintenant dans `create vite` vers leurs starters (`create-vue` et `Nuxt 3` pour Vue, et `SvelteKit` pour Svelte).
-## Node.js Support
+## Support de Node.js
-Vite no longer supports Node.js 14 / 16 / 17 / 19, which reached its EOL. Node.js 18 / 20+ is now required.
+Vite ne supporte plus Node.js 14 / 16 / 17 / 19, qui a atteint sa date de fin de vie. Node.js 18 / 20+ est maintenant requis.
-## Performance
+## Performances
-On top of Rollup 4's build performance improvements, there is a new guide to help you identify and fix common performance issues at [https://vite.dev/guide/performance](/guide/performance).
+En plus des améliorations des performances de build de Rollup 4, il existe un guide pour vous aider à identifier et résoudre les problèmes de performances communs à [https://fr.vite.dev/guide/performance](/guide/performance).
-Vite 5 also introduces [server.warmup](/guide/performance.html#warm-up-frequently-used-files), a new feature to improve startup time. It lets you define a list of modules that should be pre-transformed as soon as the server starts. When using [`--open` or `server.open`](/config/server-options.html#server-open), Vite will also automatically warm up the entry point of your app or the provided URL to open.
+Vite 5 introduit [server.warmup](/guide/performance.html#warm-up-frequently-used-files), une nouvelle fonctionnalité pour améliorer le temps de démarrage. Il vous permet de définir une liste de modules qui devraient être prétransformés dès que le serveur démarre. Lorsque vous utilisez [`--open` ou `server.open`](/config/server-options.html#server-open), Vite démarrera également automatiquement le point d'entrée de votre application ou l'URL fournie pour l'ouvrir.
-## Main Changes
+## Changements majeurs
-- [Vite is now powered by Rollup 4](/guide/migration#rollup-4)
-- [The CJS Node API has been deprecated](/guide/migration#deprecate-cjs-node-api)
-- [Rework `define` and `import.meta.env.*` replacement strategy](/guide/migration#rework-define-and-import-meta-env-replacement-strategy)
-- [SSR externalized modules value now matches production](/guide/migration#ssr-externalized-modules-value-now-matches-production)
-- [`worker.plugins` is now a function](/guide/migration#worker-plugins-is-now-a-function)
-- [Allow path containing `.` to fallback to index.html](/guide/migration#allow-path-containing-to-fallback-to-index-html)
-- [Align dev and preview HTML serving behavior](/guide/migration#align-dev-and-preview-html-serving-behaviour)
-- [Manifest files are now generated in `.vite` directory by default](/guide/migration#manifest-files-are-now-generated-in-vite-directory-by-default)
-- [CLI shortcuts require an additional `Enter` press](/guide/migration#cli-shortcuts-require-an-additional-enter-press)
-- [Update `experimentalDecorators` and `useDefineForClassFields` TypeScript behavior](/guide/migration#update-experimentaldecorators-and-usedefineforclassfields-typescript-behaviour)
-- [Remove `--https` flag and `https: true`](/guide/migration#remove-https-flag-and-https-true)
-- [Remove `resolvePackageEntry` and `resolvePackageData` APIs](/guide/migration#remove-resolvepackageentry-and-resolvepackagedata-apis)
-- [Removes previously deprecated APIs](/guide/migration#removed-deprecated-apis)
-- [Read more about advanced changes affecting plugin and tool authors](/guide/migration#advanced)
+- [Vite est maintenant alimenté par Rollup 4](/guide/migration#rollup-4)
+- [L'API Node CJS a été dépréciée](/guide/migration#deprecate-cjs-node-api)
+- [Réécriture de `define` et de la stratégie de remplacement de `import.meta.env.*`](/guide/migration#rework-define-and-import-meta-env-replacement-strategy)
+- [La valeur des modules externes SSR correspond maintenant à la production](/guide/migration#ssr-externalized-modules-value-now-matches-production)
+- [`worker.plugins` est maintenant une fonction](/guide/migration#worker-plugins-is-now-a-function)
+- [Autoriser les chemins contenant `.` à tomber sur index.html](/guide/migration#allow-path-containing-to-fallback-to-index-html)
+- [Allignement du comportement de serveur de développement et de prévisualisation HTML](/guide/migration#align-dev-and-preview-html-serving-behaviour)
+- [Les fichiers manifestes sont maintenant générés dans le répertoire `.vite` par défaut](/guide/migration#manifest-files-are-now-generated-in-vite-directory-by-default)
+- [Les raccourcis CLI nécessitent une pression supplémentaire sur `Enter`](/guide/migration#cli-shortcuts-require-an-additional-enter-press)
+- [Mise à jour le comportement de `experimentalDecorators` et `useDefineForClassFields` TypeScript](/guide/migration#update-experimentaldecorators-and-usedefineforclassfields-typescript-behaviour)
+- [Suppression du drapeau `--https` et `https: true`](/guide/migration#remove-https-flag-and-https-true)
+- [Suppression des APIs `resolvePackageEntry` et `resolvePackageData`](/guide/migration#remove-resolvepackageentry-and-resolvepackagedata-apis)
+- [Suppression des APIs dépréciées](/guide/migration#removed-deprecated-apis)
+- [Lire plus sur les changements avancés affectant les auteurs de plugins et d'outils](/guide/migration#advanced)
-## Migrating to Vite 5
+## Migration vers Vite 5
-We have worked with ecosystem partners to ensure a smooth migration to this new major. Once again, [vite-ecosystem-ci](https://www.youtube.com/watch?v=7L4I4lDzO48) has been crucial to help us make bolder changes while avoiding regressions. We're thrilled to see other ecosystems adopt similar schemes to improve the collaboration between their projects and downstream maintainers.
+Nous avons travaillé avec nos partenaires de l'écosystème pour garantir une migration fluide vers cette nouvelle version majeure. Une fois de plus, [vite-ecosystem-ci](https://www.youtube.com/watch?v=7L4I4lDzO48) a été crucial pour nous aider à apporter des changements plus audacieux tout en évitant les régressions. Nous sommes ravis de voir d'autres écosystèmes adopter des schémas similaires pour améliorer la collaboration entre leurs projets et les mainteneurs downstream.
-For most projects, the update to Vite 5 should be straight forward. But we advise reviewing the [detailed Migration Guide](/guide/migration) before upgrading.
+Pour la plupart des projets, la mise à jour vers Vite 5 devrait être directe. Mais nous vous conseillons de revoir le [guide de migration détaillé](/guide/migration) avant de mettre à jour.
-A low level breakdown with the full list of changes to Vite core can be found at the [Vite 5 Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#500-2023-11-16).
+Un résumé au niveau basique avec la liste complète des changements pour le noyau de Vite peut être trouvé dans le [changelog de Vite 5](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#500-2023-11-16).
-## Acknowledgments
+## Remerciements
-Vite 5 is the result of long hours of work by our community of contributors, downstream maintainers, plugins authors, and the [Vite Team](/team). A big shout out to [Bjorn Lu](https://twitter.com/bluwyoo) for leading the release process for this major.
+Vite 5 est le résultat de longues heures de travail par notre communauté de contributeurs, mainteneurs, auteurs de plugins, et l'équipe [Vite](/team). Un grand coup de main à [Bjorn Lu](https://twitter.com/bluwyoo) pour mener le processus de release pour cette version majeure.
-We're also thankful to individuals and companies sponsoring Vite development. [StackBlitz](https://stackblitz.com/), [Nuxt Labs](https://nuxtlabs.com/), and [Astro](https://astro.build) continue to invest in Vite by hiring Vite team members. A shout out to sponsors on [Vite's GitHub Sponsors](https://github.com/sponsors/vitejs), [Vite's Open Collective](https://opencollective.com/vite), and [Evan You's GitHub Sponsors](https://github.com/sponsors/yyx990803). A special mention to [Remix](https://remix.run/) for becoming a Gold sponsor and contributing back after switching to Vite.
+Nous sommes également reconnaissants aux individus et entreprises qui soutiennent le développement de Vite. [StackBlitz](https://stackblitz.com/), [Nuxt Labs](https://nuxtlabs.com/), et [Astro](https://astro.build) continuent à investir dans Vite en recrutant des membres de l'équipe Vite. Un grand coup de main aux sponsors sur [GitHub Sponsors de Vite](https://github.com/sponsors/vitejs), [Open Collective de Vite](https://opencollective.com/vite), et [GitHub Sponsors d'Evan You](https://github.com/sponsors/yyx990803). Un grand merci à [Remix](https://remix.run/) pour devenir un sponsor or et contribuer aux retours après avoir changé pour utiliser Vite.
diff --git a/docs/blog/announcing-vite6.md b/docs/blog/announcing-vite6.md
index 8984bbe..f2c02d2 100644
--- a/docs/blog/announcing-vite6.md
+++ b/docs/blog/announcing-vite6.md
@@ -1,7 +1,7 @@
---
-title: Vite 6.0 is out!
+title: Vite 6.0 est sorti !
author:
- name: The Vite Team
+ name: L'équipe Vite
date: 2024-11-26
sidebar: false
head:
@@ -10,106 +10,106 @@ head:
content: website
- - meta
- property: og:title
- content: Announcing Vite 6
+ content: Annonce de Vite 6
- - meta
- property: og:image
- content: https://vite.dev/og-image-announcing-vite6.png
+ content: https://fr.vite.dev/og-image-announcing-vite6.png
- - meta
- property: og:url
- content: https://vite.dev/blog/announcing-vite6
+ content: https://fr.vite.dev/blog/announcing-vite6
- - meta
- property: og:description
- content: Vite 6 Release Announcement
+ content: Annonce de la sortie de Vite 6
- - meta
- name: twitter:card
content: summary_large_image
---
-# Vite 6.0 is out!
+# Vite 6.0 est sorti !
-_November 26, 2024_
+_26 novembre 2024_
-
+
-Today, we're taking another big step in Vite's story. The Vite [team](/team), [contributors](https://github.com/vitejs/vite/graphs/contributors), and ecosystem partners are excited to announce the release of Vite 6.
+Aujourd'hui, il s'agit d'un autre grand pas dans l'histoire de Vite. L'équipe [Vite](/team), les contributeurs et les partenaires de l'écosystème sont enthousiasmés d'annoncer la sortie de Vite 6.
-It has been an eventful year. Vite adoption keeps growing, with npm downloads per week jumping from 7.5 million to 17 million since the release of Vite 5 a year ago. [Vitest](https://vitest.dev) is not only being favored more by users but is also starting to form an ecosystem of its own. For example, [Storybook](https://storybook.js.org) has new testing capabilities powered by Vitest.
+Cette année a été pleine d'événements. L'adoption de Vite continue de croître, avec des téléchargements npm par semaine passant de 7,5 millions à 17 millions depuis la sortie de Vite 5 il y a un an. [Vitest](https://vitest.dev) n'est plus seulement privilégiée par les utilisateurs, mais commence également à former un écosystème propre. Par exemple, [Storybook](https://storybook.js.org) a de nouvelles capacités de test pilotées par Vitest.
-New frameworks have also joined the Vite ecosystem, including [TanStack Start](https://tanstack.com/start), [One](https://onestack.dev/), [Ember](https://emberjs.com/), and others. Web frameworks are innovating at an increasingly faster pace. You can check out the improvements folks have been doing at [Astro](https://astro.build/), [Nuxt](https://nuxt.com/), [SvelteKit](https://kit.svelte.dev/), [Solid Start](https://www.solidjs.com/blog/introducing-solidstart), [Qwik City](https://qwik.builder.io/qwikcity/overview/), [RedwoodJS](https://redwoodjs.com/), [React Router](https://reactrouter.com/), and the list goes on.
+De nouveaux frameworks ont également rejoint l'écosystème Vite, y compris [TanStack Start](https://tanstack.com/start), [One](https://onestack.dev/), [Ember](https://emberjs.com/), et d'autres. Les frameworks web innovent de plus en plus rapidement. Vous pouvez consulter les améliorations que les gens ont faites à [Astro](https://astro.build/), [Nuxt](https://nuxt.com/), [SvelteKit](https://kit.svelte.dev/), [Solid Start](https://www.solidjs.com/blog/introducing-solidstart), [Qwik City](https://qwik.builder.io/qwikcity/overview/), [RedwoodJS](https://redwoodjs.com/), [React Router](https://reactrouter.com/), et la liste continue.
-Vite is used by OpenAI, Google, Apple, Microsoft, NASA, Shopify, Cloudflare, GitLab, Reddit, Linear, among many others. Two months ago, we started a list of [companies using Vite](https://github.com/vitejs/companies-using-vite). We're happy to see many developers sending us a PR to add their companies to the list. It's hard to believe how much the ecosystem we built together has grown since Vite gave its first steps.
+Vite est utilisé par OpenAI, Google, Apple, Microsoft, NASA, Shopify, Cloudflare, GitLab, Reddit, Linear, et bien d'autres encore. Deux mois plus tard, nous avons commencé une liste d'[entreprises utilisant Vite](https://github.com/vitejs/companies-using-vite). Nous sommes heureux de voir beaucoup de développeurs nous envoyer une PR pour ajouter leurs entreprises à la liste. Il est difficile de croire à la quantité d'écosystème que nous avons construit ensemble depuis que Vite a pris ses premières étapes.
-
+
-## Speeding up the Vite ecosystem
+## Accélérer l'écosystème de Vite
-Last month, the community gathered for the third edition of [ViteConf](https://viteconf.org/24/replay), hosted once more by [StackBlitz](https://stackblitz.com). It was the biggest Vite conference, with a broad representation of builders from the ecosystem. Among other announcements, Evan You announced [VoidZero](https://staging.voidzero.dev/posts/announcing-voidzero-inc), a company dedicated to building an open-source, high-performance, and unified development toolchain for the JavaScript ecosystem. VoidZero is behind [Rolldown](https://rolldown.rs) and [Oxc](https://oxc.rs), and their team is making significant strides, getting them rapidly ready for being adopted by Vite. Watch Evan's keynote to learn more about the next steps for Vite's rust-powered future.
+Le mois dernier, la communauté s'est réunie pour la troisième édition de la [ViteConf](https://viteconf.org/24/replay), hébergée une fois de plus par [StackBlitz](https://stackblitz.com). C'était la plus grande conférence Vite, avec une représentation étendue de constructeurs de l'écosystème. Parmi les autres annonces, Evan You a annoncé [VoidZero](https://staging.voidzero.dev/posts/announcing-voidzero-inc), une entreprise dédiée à la construction d'un outil de chaîne de développement open-source, haue-performance et unifié pour l'écosystème JavaScript. VoidZero est derrière [Rolldown](https://rolldown.rs) et [Oxc](https://oxc.rs), et leur équipe fait des progrès significatifs, les préparant rapidement pour être adoptés par Vite. Regardez la keynote d'Evan pour en savoir plus sur les étapes suivantes pour le futur de Vite, piloté par le rust.
-[Stackblitz](https://stackblitz.com) unveiled [bolt.new](https://bolt.new), a Remix app that combines Claude and WebContainers and lets you prompt, edit, run, and deploy full-stack apps. Nate Weiner announced [One](https://onestack.dev/), a new Vite-powered React framework for web and native. Storybook showcased their latest Vitest-powered [testing features](https://youtu.be/8t5wxrFpCQY?si=PYZoWKf-45goQYDt). And so much more. We encourage you to watch [all 43 talks](https://www.youtube.com/playlist?list=PLqGQbXn_GDmnObDzgjUF4Krsfl6OUKxtp). The speakers made a significant effort to share with us what each project has been up to.
+[Stackblitz](https://stackblitz.com) a révélé [bolt.new](https://bolt.new), une application Remix qui combine Claude et WebContainers et vous permet de prompt, modifier, exécuter et déployer des applications full-stack. Nate Weiner a annoncé [One](https://onestack.dev/), un nouveau framework React Vite pour le web et natif. Storybook a présenté leurs dernières fonctionnalités de test pilotées par Vitest [testing features](https://youtu.be/8t5wxrFpCQY?si=PYZoWKf-45goQYDt). Et bien plus encore. Nous vous encourageons à regarder [les 43 conférences](https://www.youtube.com/playlist?list=PLqGQbXn_GDmnObDzgjUF4Krsfl6OUKxtp). Les conférenciers ont fait un effort significatif pour nous partager ce que chaque projet etait en train de faire.
-Vite also got a refreshed landing page and a clean domain. You should update your URLs to point to the new [vite.dev](https://vite.dev) domain moving forward. The new design and implementation was done by VoidZero, by the same folks that made their website. Shoutout to [Vicente Rodriguez](https://bento.me/rmoon) and [Simon Le Marchant](https://marchantweb.com/).
+Vite a également mis à jour sa page d'accueil et cleané son domaine. Vous devriez mettre à jour vos URL pour pointer vers le nouveau domaine [vite.dev](https://fr.vite.dev). Le nouveau design et l'implémentation a été fait par VoidZero, par les mêmes personnes qui ont fait leur site web. Remerciement spéciaux à [Vicente Rodriguez](https://bento.me/rmoon) et [Simon Le Marchant](https://marchantweb.com/).
-## The next Vite major is here
+## La prochaine version majeure de Vite est arrivée
-Vite 6 is the most significant major release since Vite 2. We're eager to partner with the ecosystem to keep expanding our shared commons through new APIs and, as usual, a more polished base upon which to build.
+Vite 6 est la plus importante version majeure depuis Vite 2. Nous sommes impatients de collaborer avec l'écosystème pour maintenir et étendre nos assets partagés via de nouvelles APIs, et comme d'habitude, une base plus claire sur laquelle construire.
-Quick links:
+Liens rapides :
- [Docs](/)
-- Translations: [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/), [한국어](https://ko.vite.dev/), [Deutsch](https://de.vite.dev/)
-- [Migration Guide](/guide/migration)
+- Traductions: [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/), [한국어](https://ko.vite.dev/), [Deutsch](https://de.vite.dev/)
+- [Guide de migration](/guide/migration)
- [GitHub Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#600-2024-11-26)
-If you're new to Vite, we suggest reading the [Getting Started](/guide/) and [Features](/guide/features) guides first.
+Si vous êtes nouveau sur Vite, nous vous suggérons de lire d'abord les guides [Débuter](/guide/) et [Fonctionnalités](/guide/features).
-We want to thank the more than [1K contributors to Vite Core](https://github.com/vitejs/vite/graphs/contributors) and the maintainers and contributors of Vite plugins, integrations, tools, and translations that have helped us craft this new major. We invite you to get involved and help us improve Vite for the whole ecosystem. Learn more at our [Contributing Guide](https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md).
+Nous voulons remercier les plus de [1 000 contributeurs à Vite Core](https://github.com/vitejs/vite/graphs/contributors) et les mainteneurs et contributeurs de plugins, intégrations, outils, et traductions qui ont aidé à créer cette nouvelle version majeure. Nous vous invitons à participer et à nous aider à améliorer Vite pour l'écosystème entier. En savoir plus sur notre [Guide de contribution](https://github.com/vitejs/vite/blob/main/CONTRIBUTING.md).
-To get started, we suggest helping [triage issues](https://github.com/vitejs/vite/issues), [review PRs](https://github.com/vitejs/vite/pulls), send failing tests PRs based on open issues, and support others in [Discussions](https://github.com/vitejs/vite/discussions) and Vite Land's [help forum](https://discord.com/channels/804011606160703521/1019670660856942652). If you'd like to talk to us, join our [Discord community](http://chat.vite.dev/) and say hi on the [#contributing channel](https://discord.com/channels/804011606160703521/804439875226173480).
+Pour commencer, nous vous suggérons de [trier les tickets](https://github.com/vitejs/vite/issues), de [revoir les PR](https://github.com/vitejs/vite/pulls), de renvoyer des PR de tests en échec basés sur les tickets ouverts, et de soutenir les autres dans [Discussions](https://github.com/vitejs/vite/discussions) et le [forum d'aide de Vite Land](https://discord.com/channels/804011606160703521/1019670660856942652). Si vous souhaitez nous parler, rejoignez notre [communauté Discord](http://chat.vite.dev/) et dites-nous bonjour sur le canal [#contributing](https://discord.com/channels/804011606160703521/804439875226173480).
-For the latest news about the Vite ecosystem and Vite core, follow us on [Bluesky](https://bsky.app/profile/vite.dev), [X](https://twitter.com/vite_js), or [Mastodon](https://webtoo.ls/@vite).
+Pour les dernières nouvelles sur l'écosystème Vite et le noyau Vite, suivez-nous sur [Bluesky](https://bsky.app/profile/vite.dev), [X](https://twitter.com/vite_js), ou [Mastodon](https://webtoo.ls/@vite).
-## Getting started with Vite 6
+## Démarrer avec Vite 6
-You can use `pnpm create vite` to quickly scaffold a Vite app with your preferred framework or play online with Vite 6 using [vite.new](https://vite.new). You can also run `pnpm create vite-extra` to get access to templates from other frameworks and runtimes (Solid, Deno, SSR, and library starters). `create vite-extra` templates are also available when you run `create vite` under the `Others` option.
+Vous pouvez utiliser `pnpm create vite` pour créer rapidement une application Vite avec votre framework préféré ou jouer en ligne avec Vite 6 en utilisant [vite.new](https://vite.new). Vous pouvez également exécuter `pnpm create vite-extra` pour accéder aux templates de d'autres frameworks et runtimes (Solid, Deno, SSR, et bibliothèques de starters). `create vite-extra` templates sont également disponibles lorsque vous exécutez `create vite` sous l'option `Others`.
-The Vite starter templates are intended to be used as a playground to test Vite with different frameworks. When building your next project, you should reach out to the starter recommended by each framework. `create vite` also provides a shortcut to setup proper starters by some frameworks, like `create-vue`, `Nuxt 3`, `SvelteKit`, `Remix`, `Analog`, and `Angular`.
+Les templates de démarrage de Vite sont conçus pour être utilisés comme un terrain de jeu pour tester Vite avec différents frameworks. Lorsque vous construisez votre prochain projet, vous devriez vous tourner vers le démarrage recommandé par chaque framework. `create vite` fournit également un raccourci pour configurer des démarrages appropriés par certains frameworks, comme `create-vue`, `Nuxt 3`, `SvelteKit`, `Remix`, `Analog`, et `Angular`.
-## Node.js Support
+## Support de Node.js
-Vite 6 supports Node.js 18, 20, and 22+, similar to Vite 5. Node.js 21 support has been dropped. Vite drops Node.js support for older versions after their [EOL](https://endoflife.date/nodejs). The Node.js 18 EOL is at the end of April 2025, after which we may release a new major to bump the required Node.js version.
+Vite 6 supporte Node.js 18, 20, et 22+, comme Vite 5. Le support de Node.js 21 a été supprimé. Vite cesse le support de Node.js pour les versions plus anciennes après leur [EOL](https://endoflife.date/nodejs). Le EOL de Node.js 18 est le 30 avril 2025, après quoi nous pourrons publier une nouvelle version majeure pour augmenter la version de Node.js requise.
-## Experimental Environment API
+## API d'environnement expérimental
-Vite is getting more flexible with the new Environment API. These new APIs will allow framework authors to offer a dev experience closer to production and for the Ecosystem to share new building blocks. Nothing changes if you're building a SPA; when you use Vite with a single client environment, everything works as before. And even for custom SSR apps, Vite 6 is backward compatible. The primary target audience for Environment API is framework authors.
+Vite est devenu plus flexible avec la nouvelle API d'environnement. Ces nouvelles APIs permettront aux auteurs de frameworks d'offrir une expérience de développement plus proche de la production et pour l'écosystème partager de nouveaux blocs de construction. Rien ne change si vous construisez une SPA ; lorsque vous utilisez Vite avec un seul environnement client, tout fonctionne comme avant. Et même pour les applications SSR personnalisées, Vite 6 est compatible avec les versions précédentes. Le public principal pour l'API d'environnement est l'auteur de framework.
-For end users who are curious, [Sapphi](https://github.com/sapphi-red) wrote a great [Introduction to Environment API](https://green.sapphi.red/blog/increasing-vites-potential-with-the-environment-api) guide. It is a great place to start and understand why we're trying to make Vite even more flexible.
+Pour les utilisateurs finaux qui sont curieux, [Sapphi](https://github.com/sapphi-red) a écrit un guide [Introduction à l'API d'environnement](https://green.sapphi.red/blog/increasing-vites-potential-with-the-environment-api). C'est un excellent point de départ pour comprendre pourquoi nous essayons de rendre Vite encore plus flexible.
-If you are a framework author or Vite plugin maintainer and would like to leverage the new APIs, you can learn more at the [Environment API Guides](https://main.vite.dev/guide/api-environment).
+Si vous êtes un auteur de framework ou un mainteneur de plugin Vite et souhaitez tirer parti des nouvelles APIs, vous pouvez en savoir plus sur les [Guides API d'environnement](https://main.vite.dev/guide/api-environment).
-We want to thank everyone involved in defining and implementing the new APIs. The story begins with Vite 2 adopting the unbundled SSR dev scheme pioneered by [Rich Harris](https://github.com/Rich-Harris) and the [SvelteKit](https://svelte.dev/docs/kit) team. Vite's SSR transform then unlocked [Anthony Fu](https://github.com/antfu/) and [Pooya Parsa](https://github.com/pi0) to create vite-node and improve [Nuxt's Dev SSR story](https://antfu.me/posts/dev-ssr-on-nuxt). Anthony went to use vite-node to power [Vitest](https://vitest.dev), and [Vladimir Sheremet](https://github.com/sheremet-va) kept improving it as part of his work maintaining Vitest. At the beginning of 2023, Vladimir started working to upstream vite-node to Vite Core, and we released it as Runtime API in Vite 5.1 a year later. Feedback from ecosystem partners (special shout-out to the Cloudflare team) pushed us to do a more ambitious rework of Vite's environments. You can learn more about the story at [Patak's ViteConf 24 talk](https://www.youtube.com/watch?v=WImor3HDyqU?si=EZ-rFJn4pDW3tUvp).
+Nous voulons remercier toutes les personnes impliquées dans la définition et l'implémentation des nouvelles APIs. L'histoire commence avec Vite 2 qui adopte le schéma de développement SSR non lié initié par [Rich Harris](https://github.com/Rich-Harris) et l'équipe [SvelteKit](https://svelte.dev/docs/kit). Le transformateur SSR de Vite a ensuite amené [Anthony Fu](https://github.com/antfu/) et [Pooya Parsa](https://github.com/pi0) pour créer vite-node et améliorer l'histoire de SSR de développement [Nuxt](https://antfu.me/posts/dev-ssr-on-nuxt). Anthony a utilisé vite-node pour alimenter [Vitest](https://vitest.dev), et [Vladimir Sheremet](https://github.com/sheremet-va) a continué à l'améliorer dans le cadre de son travail de maintenance de Vitest. Au début de 2023, Vladimir a commencé à travailler pour monter vite-node vers le noyau de Vite, et nous l'avons publié comme API de runtime dans Vite 5.1 un an plus tard. Les retours de l'écosystème (un grand merci à l'équipe de Cloudflare) nous ont poussé à faire un re-travail plus ambitieux des environnements de Vite. Vous pouvez en savoir plus sur l'histoire à la [conférence de ViteConf 24 de Patak](https://www.youtube.com/watch?v=WImor3HDyqU?si=EZ-rFJn4pDW3tUvp).
-Everyone on the Vite team participated in defining the new API, which was co-designed with feedback from many projects in the Ecosystem. Thanks to everyone involved! We encourage you to get involved if you're building a framework, plugin, or tool on top of Vite. The new APIs are experimental. We will work with the Ecosystem to review how the new APIs will be used and stabilize them for the next major. If you'd like to ask questions or give feedback, there is an [open GitHub discussion here](https://github.com/vitejs/vite/discussions/16358).
+Chaque personne de l'équipe Vite a participé à la définition de la nouvelle API, qui a été co-conçue avec des retours de nombreux projets de l'écosystème. Merci à toutes les personnes impliquées ! Nous vous encourgeons à participer si vous construisez un framework, un plugin ou un outil sur Vite. Les nouvelles APIs sont expérimentales. Nous travaillerons avec l'écosystème pour examiner comment les nouvelles APIs seront utilisées pour les stabiliser sur la prochaine version majeure. Si vous souhaitez poser des questions ou donner des retours, il y a un [discussion GitHub ouvert ici](https://github.com/vitejs/vite/discussions/16358).
-## Main Changes
+## Changements principaux
-- [Default value for `resolve.conditions`](/guide/migration#default-value-for-resolve-conditions)
+- [Valeur par défaut pour `resolve.conditions`](/guide/migration#default-value-for-resolve-conditions)
- [JSON stringify](/guide/migration#json-stringify)
-- [Extended support of asset references in HTML elements](/guide/migration#extended-support-of-asset-references-in-html-elements)
+- [Support étendu des références d'assets dans les éléments HTML](/guide/migration#extended-support-of-asset-references-in-html-elements)
- [postcss-load-config](/guide/migration#postcss-load-config)
-- [Sass now uses modern API by default](/guide/migration#sass-now-uses-modern-api-by-default)
-- [Customize CSS output file name in library mode](/guide/migration#customize-css-output-file-name-in-library-mode)
-- [And more changes that should only affect a few users](/guide/migration#advanced)
+- [Sass utilise maintenant l'API moderne par défaut](/guide/migration#sass-now-uses-modern-api-by-default)
+- [Personnalisation du nom de fichier de sortie CSS dans le mode bibliothèque](/guide/migration#customize-css-output-file-name-in-library-mode)
+- [Et plus de changements qui ne devraient affecter qu'un petit nombre d'utilisateurs](/guide/migration#advanced)
-There is also a new [Breaking Changes](/changes/) page that lists all planned, considering, and past changes in Vite.
+Il y a également une nouvelle page [Changements cassants](/changes/) qui liste tous les changements planifiés, considérés et passés dans Vite.
-## Migrating to Vite 6
+## Migration vers Vite 6
-For most projects, the update to Vite 6 should be straightforward, but we advise reviewing the [detailed Migration Guide](/guide/migration) before upgrading.
+Pour la plupart des projets, la mise à jour vers Vite 6 devrait être simple, mais nous vous conseillons de consulter le [guide de migration détaillé](/guide/migration) avant de mettre à jour.
-The complete list of changes is at the [Vite 6 Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#500-2024-11-26).
+La liste complète des changements est à la page [Changelog de Vite 6](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#500-2024-11-26).
-## Acknowledgments
+## Remerciements
-Vite 6 results from long work hours by our community of contributors, downstream maintainers, plugin authors, and the [Vite Team](/team). We appreciate the individuals and companies sponsoring Vite development. Vite is brought to you by [VoidZero](https://voidzero.dev), in partnership with [StackBlitz](https://stackblitz.com/), [Nuxt Labs](https://nuxtlabs.com/), and [Astro](https://astro.build). A shout-out to sponsors on [Vite's GitHub Sponsors](https://github.com/sponsors/vitejs) and [Vite's Open Collective](https://opencollective.com/vite).
+Vite 6 résulte de longues heures de travail par notre communauté de contributeurs, mainteneurs, auteurs de plugins, et l'équipe [Vite](/team). Nous apprécions les individus et les entreprises qui soutiennent le développement de Vite. Vite est porté par [VoidZero](https://voidzero.dev), en partenariat avec [StackBlitz](https://stackblitz.com/), [Nuxt Labs](https://nuxtlabs.com/), et [Astro](https://astro.build). Un grand merci aux sponsors sur [GitHub Sponsors de Vite](https://github.com/sponsors/vitejs) et [Open Collective de Vite](https://opencollective.com/vite).
diff --git a/docs/changes/hotupdate-hook.md b/docs/changes/hotupdate-hook.md
index ce3283f..9098f79 100644
--- a/docs/changes/hotupdate-hook.md
+++ b/docs/changes/hotupdate-hook.md
@@ -1,20 +1,20 @@
-# HMR `hotUpdate` Plugin Hook
+# HMR (hot module reloading) `hotUpdate` Plugin Hook
-::: tip Feedback
-Give us feedback at [Environment API feedback discussion](https://github.com/vitejs/vite/discussions/16358)
+::: tip Retours
+Donnez-nous vos retours dans les [discussions GitHub](https://github.com/vitejs/vite/discussions/16358)
:::
-We're planning to deprecate the `handleHotUpdate` plugin hook in favor of [`hotUpdate` hook](/guide/api-environment#the-hotupdate-hook) to be [Environment API](/guide/api-environment.md) aware, and handle additional watch events with `create` and `delete`.
+Nous prévoyons de déprécier le hook `handleHotUpdate` en faveur du nouveau hook [`hotUpdate`](/guide/api-environment#the-hotupdate-hook) pour être compatible avec l'[API Environnement](/guide/api-environment.md), et pour gérer les événements de surveillance supplémentaires avec `create` et `delete`.
-Affected scope: `Vite Plugin Authors`
+Portée affectée: `Auteurs de plugins Vite`
-::: warning Future Deprecation
-`hotUpdate` was first introduced in `v6.0`. The deprecation of `handleHotUpdate` is planned for `v7.0`. We don't yet recommend moving away from `handleHotUpdate` yet. If you want to experiment and give us feedback, you can use the `future.removePluginHookHandleHotUpdate` to `"warn"` in your vite config.
+::: warning Dépréciation future
+`hotUpdate` a été introduit dans `v6.0`. La dépréciation de `handleHotUpdate` est prévue pour `v7.0`. Nous ne recommandons pas encore de passer à `hotUpdate`. Si vous souhaitez expérimenter et donner vos retours, vous pouvez utiliser la configuration `future.removePluginHookHandleHotUpdate` pour `"warn"` dans votre configuration Vite.
:::
## Motivation
-The [`handleHotUpdate` hook](/guide/api-plugin.md#handlehotupdate) allows to perform custom HMR update handling. A list of modules to be updated is passed in the `HmrContext`
+Le hook [`handleHotUpdate`](/guide/api-plugin.md#handlehotupdate) permet de gérer les mises à jour HMR personnalisées. Une liste de modules à mettre à jour est passée dans le contexte `HmrContext`
```ts
interface HmrContext {
@@ -26,9 +26,9 @@ interface HmrContext {
}
```
-This hook is called once for all environments, and the passed modules have mixed information from the Client and SSR environments only. Once frameworks move to custom environments, a new hook that is called for each of them is needed.
+Ce hook est appelé une fois pour tous les environnements, et les modules passés ont des informations mélangées provenant des environnements Client et SSR. Une fois que les frameworks passeront à des environnements personnalisés, un nouveau hook appelé pour chacun d'entre eux est nécessaire.
-The new `hotUpdate` hook works in the same way as `handleHotUpdate` but it is called for each environment and receives a new `HotUpdateOptions` instance:
+Le nouveau hook `hotUpdate` fonctionne de la même manière que `handleHotUpdate` mais il est appelé pour chaque environnement et reçoit une nouvelle instance `HotUpdateOptions`:
```ts
interface HotUpdateOptions {
@@ -41,13 +41,13 @@ interface HotUpdateOptions {
}
```
-The current dev environment can be accessed like in other Plugin hooks with `this.environment`. The `modules` list will now be module nodes from the current environment only. Each environment update can define different update strategies.
+L'environnement de développement actuel peut être accédé comme dans les autres hooks de plugin avec `this.environment`. La liste `modules` ne contiendra maintenant que les modules de l'environnement actuel. Chaque environnement peut définir des stratégies de mise à jour différentes.
-This hook is also now called for additional watch events and not only for `'update'`. Use `type` to differentiate between them.
+Ce hook est maintenant appelé pour les événements de surveillance supplémentaires et non seulement pour `'update'`. Utilisez `type` pour les différencier.
-## Migration Guide
+## Guide de migration
-Filter and narrow down the affected module list so that the HMR is more accurate.
+Filtrez et réduisez la liste des modules affectés pour que le HMR soit plus précis.
```js
handleHotUpdate({ modules }) {
@@ -61,7 +61,7 @@ hotUpdate({ modules }) {
}
```
-Return an empty array and perform a full reload:
+Retourner un tableau vide et effectuer un rechargement complet:
```js
handleHotUpdate({ server, modules, timestamp }) {
@@ -97,7 +97,7 @@ hotUpdate({ modules, timestamp }) {
}
```
-Return an empty array and perform complete custom HMR handling by sending custom events to the client:
+Retourner un tableau vide et effectuer un traitement HMR personnalisé complet en envoyant des événements personnalisés au client:
```js
handleHotUpdate({ server }) {
@@ -109,7 +109,7 @@ handleHotUpdate({ server }) {
return []
}
-// Migrate to...
+// Migrer vers...
hotUpdate() {
this.environment.hot.send({
diff --git a/docs/changes/index.md b/docs/changes/index.md
index 7607ae2..ec5be3f 100644
--- a/docs/changes/index.md
+++ b/docs/changes/index.md
@@ -1,18 +1,18 @@
# Breaking Changes
-List of breaking changes in Vite including API deprecations, removals, and changes. Most of the changes below can be opt-in using the [`future` option](/config/shared-options.html#future) in your Vite config.
+Liste des changements cassants dans Vite, y compris les dépréciations, suppressions et modifications des API. La plupart des modifications ci-dessous peuvent être incluses en utilisant l'option [`future`](/config/shared-options.html#future) dans votre configuration Vite.
-## Planned
+## Changements planifiés
-These changes are planned for the next major version of Vite. The deprecation or usage warnings will guide you where possible, and we're reaching out to framework, plugin authors, and users to apply these changes.
+Ces changements sont prévus pour la prochaine version majeure de Vite. Les avertissements de dépréciation ou de suppression vous guideront dans la mesure du possible, et nous nous adressons aux auteurs de framework, de plugins et aux utilisateurs pour appliquer ces modifications.
-- _No planned changes yet_
+- _Aucun changement planifié pour le moment_
-## Considering
+## Considérations
-These changes are being considered and are often experimental APIs that intend to improve upon current usage patterns. As not all changes are listed here, please check out the [Experimental Label in Vite GitHub Discussions](https://github.com/vitejs/vite/discussions/categories/feedback?discussions_q=label%3Aexperimental+category%3AFeedback) for the full list.
+Ces changements sont en cours de considération et sont souvent des API expérimentales qui visent à améliorer les usages actuels. Comme tous les changements ne sont pas listés ici, veuillez consulter la [Label Expérimental dans les discussions GitHub de Vite](https://github.com/vitejs/vite/discussions/categories/feedback?discussions_q=label%3Aexperimental+category%3AFeedback) pour la liste complète.
-We don't recommend switching to these APIs yet. They are included in Vite to help us gather feedback. Please check these proposals and let us know how they work in your use case in each's linked GitHub Discussions.
+Nous ne recommandons pas de basculer vers ces API. Elles sont incluses dans Vite pour nous aider à collecter des retours. Veuillez consulter ces propositions et nous informer de leur fonctionnement dans votre cas d'utilisation dans les discussions GitHub liées à chaque proposition.
- [`this.environment` in Hooks](/changes/this-environment-in-hooks)
- [HMR `hotUpdate` Plugin Hook](/changes/hotupdate-hook)
@@ -20,8 +20,8 @@ We don't recommend switching to these APIs yet. They are included in Vite to hel
- [SSR using `ModuleRunner` API](/changes/ssr-using-modulerunner)
- [Shared plugins during build](/changes/shared-plugins-during-build)
-## Past
+## Changements passés
-The changes below has been done or reverted. They are no longer relevant in the current major version.
+Les changements ci-dessous ont été effectués ou annulés. Ils ne sont plus pertinents dans la version majeure actuelle.
-- _No past changes yet_
+- _Aucun changement passé pour le moment_
diff --git a/docs/changes/per-environment-apis.md b/docs/changes/per-environment-apis.md
index 4ff2738..a850691 100644
--- a/docs/changes/per-environment-apis.md
+++ b/docs/changes/per-environment-apis.md
@@ -1,15 +1,15 @@
-# Move to per-environment APIs
+# Déplacer vers les API par environnement
-::: tip Feedback
-Give us feedback at [Environment API feedback discussion](https://github.com/vitejs/vite/discussions/16358)
+::: tip Retour
+Donnez-nous votre retour sur le [Discussion sur les API Environnement](https://github.com/vitejs/vite/discussions/16358)
:::
-Multiple APIs from `ViteDevServer` related to module graph and modules transforms have been moved to the `DevEnvironment` instances.
+Plusieurs API de `ViteDevServer` liées au graphique de modules et aux transformations de modules ont été déplacées vers les instances `DevEnvironment`.
-Affect scope: `Vite Plugin Authors`
+Scopes affectés: `Vite Plugin Authors`
-::: warning Future Deprecation
-The `Environment` instance was first introduced at `v6.0`. The deprecation of `server.moduleGraph` and other methods that are now in environments is planned for `v7.0`. We don't recommend moving away from server methods yet. To identify your usage, set these in your vite config.
+::: warning Dépréciation future
+L'instance `Environment` a été introduite dans `v6.0`. La dépréciation de `server.moduleGraph` et d'autres méthodes qui sont maintenant dans les environnements est prévue pour `v7.0`. Nous ne recommandons pas de quitter les méthodes du serveur. Pour identifier votre utilisation, définissez ces options dans votre configuration Vite.
```ts
future: {
@@ -22,11 +22,11 @@ future: {
## Motivation
-In Vite v5 and before, a single Vite dev server always had two environments (`client` and `ssr`). The `server.moduleGraph` had mixed modules from both of these environments. Nodes were connected through `clientImportedModules` and `ssrImportedModules` lists (but a single `importers` list was maintained for each). A transformed module was represented by an `id` and a `ssr` boolean. This boolean needed to be passed to APIs, for example `server.moduleGraph.getModuleByUrl(url, ssr)` and `server.transformRequest(url, { ssr })`.
+Dans Vite v5 et avant, un seul serveur Vite avait toujours deux environnements (`client` et `ssr`). Le `server.moduleGraph` avait des modules mélangés de ces deux environnements. Les nœuds étaient connectés via les listes `clientImportedModules` et `ssrImportedModules` (mais un seul `importers` list était maintenue pour chaque). Un module transformé était représenté par un `id` et un booléen `ssr`. Ce booléen nécessitait d'être passé à des API, par exemple `server.moduleGraph.getModuleByUrl(url, ssr)` et `server.transformRequest(url, { ssr })`.
-In Vite v6, it is now possible to create any number of custom environments (`client`, `ssr`, `edge`, etc). A single `ssr` boolean isn't enough anymore. Instead of changing the APIs to be of the form `server.transformRequest(url, { environment })`, we moved these methods to the environment instance allowing them to be called without a Vite dev server.
+Dans Vite v6, il est maintenant possible de créer n'importe quel nombre d'environnements personnalisés (`client`, `ssr`, `edge`, etc). Un seul booléen `ssr` ne suffit plus. Au lieu de changer les API pour être de la forme `server.transformRequest(url, { environment })`, nous avons déplacé ces méthodes vers l'instance d'environnement, permettant de les appeler sans serveur Vite de développement.
-## Migration Guide
+## Guide de migration
- `server.moduleGraph` -> [`environment.moduleGraph`](/guide/api-environment#separate-module-graphs)
- `server.transformRequest(url, ssr)` -> `environment.transformRequest(url)`
diff --git a/docs/changes/shared-plugins-during-build.md b/docs/changes/shared-plugins-during-build.md
index 730b943..90ed894 100644
--- a/docs/changes/shared-plugins-during-build.md
+++ b/docs/changes/shared-plugins-during-build.md
@@ -1,24 +1,24 @@
-# Shared Plugins during Build
+# Plugins partagés lors du build
-::: tip Feedback
-Give us feedback at [Environment API feedback discussion](https://github.com/vitejs/vite/discussions/16358)
+::: tip Retours
+Donnez-nous vos retours dans les [discussions GitHub](https://github.com/vitejs/vite/discussions/16358)
:::
-See [Shared plugins during build](/guide/api-environment-plugins.md#shared-plugins-during-build).
+Voir [Plugins partagés lors du build](/guide/api-environment-plugins.md#shared-plugins-during-build).
-Affect scope: `Vite Plugin Authors`
+Scopes affectés: `Auteurs de plugins Vite`
-::: warning Future Default Change
-`builder.sharedConfigBuild` was first introduce in `v6.0`. You can set it true to check how your plugins work with a shared config. We're looking for feedback about changing the default in a future major once the plugin ecosystem is ready.
+::: warning Changement de valeur par défaut futur
+`builder.sharedConfigBuild` a été introduit dans `v6.0`. Vous pouvez le définir sur `true` pour vérifier comment vos plugins fonctionnent avec une configuration partagée. Nous recherchons des retours sur le changement de valeur par défaut dans une future version majeure une fois que l'écosystème des plugins sera prêt.
:::
## Motivation
-Align dev and build plugin pipelines.
+Aligner les pipelines de plugins de développement et de build.
-## Migration Guide
+## Guide de migration
-To be able to share plugins across environments, plugin state must be keyed by the current environment. A plugin of the following form will count the number of transformed modules across all environments.
+Pour pouvoir partager des plugins entre environnements, l'état du plugin doit être associé par à l'environnement actuel par un système de clés. Un plugin de la forme suivante comptera le nombre de modules transformés dans tous les environnements.
```js
function CountTransformedModulesPlugin() {
@@ -38,7 +38,7 @@ function CountTransformedModulesPlugin() {
}
```
-If we instead want to count the number of transformed modules for each environment, we need to keep a map:
+Si nous voulons compter le nombre de modules transformés pour chaque environnement, nous devons conserver une map:
```js
function PerEnvironmentCountTransformedModulesPlugin() {
@@ -59,7 +59,7 @@ function PerEnvironmentCountTransformedModulesPlugin() {
}
```
-To simplify this pattern, Vite exports a `perEnvironmentState` helper:
+Pour simplifier ce pattern, Vite exporte un assistant `perEnvironmentState`:
```js
function PerEnvironmentCountTransformedModulesPlugin() {
diff --git a/docs/changes/ssr-using-modulerunner.md b/docs/changes/ssr-using-modulerunner.md
index 2fd80eb..c16a548 100644
--- a/docs/changes/ssr-using-modulerunner.md
+++ b/docs/changes/ssr-using-modulerunner.md
@@ -1,21 +1,21 @@
-# SSR using `ModuleRunner` API
+# SSR avec l'API `ModuleRunner`
-::: tip Feedback
-Give us feedback at [Environment API feedback discussion](https://github.com/vitejs/vite/discussions/16358)
+::: tip Retours
+Donnez-nous vos retours dans les [discussions GitHub](https://github.com/vitejs/vite/discussions/16358)
:::
-`server.ssrLoadModule` has been replaced by importing from a [Module Runner](/guide/api-environment#modulerunner).
+`server.ssrLoadModule` a été remplacé par l'importation depuis un [Module Runner](/guide/api-environment#modulerunner).
-Affect scope: `Vite Plugin Authors`
+Scopes affectés: `Auteurs de plugins Vite`
-::: warning Future Deprecation
-`ModuleRunner` was first introduce in `v6.0`. The deprecation of `server.ssrLoadModule` is planned for a future major. To identify your usage, set `future.removeSsrLoadModule` to `"warn"` in your vite config.
+::: warning Dépréciation future
+`ModuleRunner` a été introduit dans `v6.0`. La dépréciation de `server.ssrLoadModule` est prévue pour une future version majeure. Pour identifier votre utilisation, définissez `future.removeSsrLoadModule` sur `"warn"` dans votre configuration Vite.
:::
## Motivation
-The `server.ssrLoadModule(url)` only allows importing modules in the `ssr` environment and can only execute the modules in the same process as the Vite dev server. For apps with custom environments, each is associated with a `ModuleRunner` that may be running in a separate thread or process. To import modules, we now have `moduleRunner.import(url)`.
+La `server.ssrLoadModule(url)` ne permet que d'importer des modules dans l'environnement `ssr` et ne peut exécuter les modules que dans le même processus que le serveur de développement Vite. Pour les applications avec des environnements personnalisés, chaque environnement est associé à un `ModuleRunner` qui peut être en cours d'exécution dans un thread ou un processus distinct. Pour importer des modules, nous avons maintenant `moduleRunner.import(url)`.
-## Migration Guide
+## Guide de migration
-Check out the [Environment API for Frameworks Guide](../guide/api-environment-frameworks.md).
+Consultez le [Guide pour les Frameworks avec l'API Environnement](../guide/api-environment-frameworks.md).
diff --git a/docs/changes/this-environment-in-hooks.md b/docs/changes/this-environment-in-hooks.md
index 2577ef3..e37a4e4 100644
--- a/docs/changes/this-environment-in-hooks.md
+++ b/docs/changes/this-environment-in-hooks.md
@@ -1,24 +1,24 @@
-# `this.environment` in Hooks
+# `this.environment` dans les hooks
-::: tip Feedback
-Give us feedback at [Environment API feedback discussion](https://github.com/vitejs/vite/discussions/16358)
+::: tip Retours
+Donnez-nous vos retours dans les [discussions GitHub](https://github.com/vitejs/vite/discussions/16358)
:::
-Before Vite 6, only two environments were available: `client` and `ssr`. A single `options.ssr` plugin hook argument in `resolveId`, `load` and `transform` allowed plugin authors to differentiate between these two environments when processing modules in plugin hooks. In Vite 6, a Vite application can define any number of named environments as needed. We're introducing `this.environment` in the plugin context to interact with the environment of the current module in hooks.
+Avant Vite 6, seuls deux environnements étaient disponibles : `client` et `ssr`. Un seul argument `options.ssr` dans les hooks `resolveId`, `load` et `transform` permettait aux auteurs de plugins de différencier ces deux environnements lors du traitement des modules dans les hooks de plugin. Dans Vite 6, une application Vite peut définir autant d'environnements nommés que nécessaire. Nous introduisons `this.environment` dans le contexte du plugin pour interagir avec l'environnement du module actuel dans les hooks.
-Affect scope: `Vite Plugin Authors`
+Scopes affectés: `Auteurs de plugins Vite`
-::: warning Future Deprecation
-`this.environment` was introduced in `v6.0`. The deprecation of `options.ssr` is planned for `v7.0`. At that point we'll start recommending migrating your plugins to use the new API. To identify your usage, set `future.removePluginHookSsrArgument` to `"warn"` in your vite config.
+::: warning Dépréciation future
+`this.environment` a été introduit dans `v6.0`. La dépréciation de `options.ssr` est prévue pour `v7.0`. À ce stade, nous commencerons à recommander la migration de vos plugins vers la nouvelle API. Pour identifier votre utilisation, définissez `future.removePluginHookSsrArgument` sur `"warn"` dans votre configuration Vite.
:::
## Motivation
-`this.environment` not only allow the plugin hook implementation to know the current environment name, it also gives access to the environment config options, module graph information, and transform pipeline (`environment.config`, `environment.moduleGraph`, `environment.transformRequest()`). Having the environment instance available in the context allows plugin authors to avoid the dependency of the whole dev server (typically cached at startup through the `configureServer` hook).
+`this.environment` permet non seulement au code d'implémentation du hook de plugin de connaître le nom de l'environnement actuel, mais également d'accéder aux options de configuration de l'environnement, à l'information sur le graphique des modules et au pipeline de transformation (`environment.config`, `environment.moduleGraph`, `environment.transformRequest()`). Avoir l'instance d'environnement disponible dans le contexte permet aux auteurs de plugins de se passer de la dépendance du serveur de développement complet (typiquement mis en cache au démarrage via le hook `configureServer`).
-## Migration Guide
+## Guide de migration
-For the existing plugin to do a quick migration, replace the `options.ssr` argument with `this.environment.name !== 'client'` in the `resolveId`, `load` and `transform` hooks:
+Pour le plugin existant, effectuez une migration rapide en remplaçant l'argument `options.ssr` par `this.environment.name !== 'client'` dans les hooks `resolveId`, `load` et `transform`:
```ts
import { Plugin } from 'vite'
@@ -40,4 +40,4 @@ export function myPlugin(): Plugin {
}
```
-For a more robust long term implementation, the plugin hook should handle for [multiple environments](/guide/api-environment.html#accessing-the-current-environment-in-hooks) using fine-grained environment options instead of relying on the environment name.
+Pour une implémentation plus robuste à long terme, le hook de plugin devrait gérer les [environnements multiples](/guide/api-environment.html#accessing-the-current-environment-in-hooks) en utilisant des options d'environnement plus fines plutôt que de se baser sur le nom de l'environnement.
diff --git a/docs/config/build-options.md b/docs/config/build-options.md
index 7e22831..11d064e 100644
--- a/docs/config/build-options.md
+++ b/docs/config/build-options.md
@@ -1,39 +1,39 @@
-# Build Options
+# Options de build
-Unless noted, the options in this section are only applied to build.
+Sauf indication contraire, les options de cette section ne s'appliquent qu'au buil.
## build.target
- **Type:** `string | string[]`
- **Default:** `'modules'`
-- **Related:** [Browser Compatibility](/guide/build#browser-compatibility)
+- **Related:** [Compatibilité avec les navigateurs](/guide/build#browser-compatibility)
-Browser compatibility target for the final bundle. The default value is a Vite special value, `'modules'`, which targets browsers with [native ES Modules](https://caniuse.com/es6-module), [native ESM dynamic import](https://caniuse.com/es6-module-dynamic-import), and [`import.meta`](https://caniuse.com/mdn-javascript_operators_import_meta) support. Vite will replace `'modules'` to `['es2020', 'edge88', 'firefox78', 'chrome87', 'safari14']`
+Cible de compatibilité avec les navigateurs pour le bundle final. La valeur par défaut est une valeur spéciale Vite, `'modules'`, qui cible les navigateurs avec les [Modules ES natifs](https://caniuse.com/es6-module), les [imports dynamiques ESM natifs](https://caniuse.com/es6-module-dynamic-import), et l'[`import.meta`](https://caniuse.com/mdn-javascript_operators_import_meta) support. Vite remplacera `'modules'` par `['es2020', 'edge88', 'firefox78', 'chrome87', 'safari14']`
-Another special value is `'esnext'` - which assumes native dynamic imports support and will only perform minimal transpiling.
+Une autre valeur spéciale est `'esnext'` - qui suppose un support natif pour les imports dynamiques et ne fera que des transpilations minimales.
-The transform is performed with esbuild and the value should be a valid [esbuild target option](https://esbuild.github.io/api/#target). Custom targets can either be an ES version (e.g. `es2015`), a browser with version (e.g. `chrome58`), or an array of multiple target strings.
+La transformation est effectuée avec esbuild et la valeur doit être une option de cible valide [esbuild](https://esbuild.github.io/api/#target). Les cibles personnalisées peuvent être une version ES (e.g. `es2015`), un navigateur avec une version (e.g. `chrome58`), ou un tableau de chaînes de cible.
-Note the build will fail if the code contains features that cannot be safely transpiled by esbuild. See [esbuild docs](https://esbuild.github.io/content-types/#javascript) for more details.
+Noter que le build échouera si le code contient des fonctionnalités qui ne peuvent pas être transpilées de manière sûre avec esbuild. Voir [docs esbuild](https://esbuild.github.io/content-types/#javascript) pour plus de détails.
## build.modulePreload
- **Type:** `boolean | { polyfill?: boolean, resolveDependencies?: ResolveModulePreloadDependenciesFn }`
- **Default:** `{ polyfill: true }`
-By default, a [module preload polyfill](https://guybedford.com/es-module-preloading-integrity#modulepreload-polyfill) is automatically injected. The polyfill is auto injected into the proxy module of each `index.html` entry. If the build is configured to use a non-HTML custom entry via `build.rollupOptions.input`, then it is necessary to manually import the polyfill in your custom entry:
+Par défaut, un [polyfill de préchargement de module](https://guybedford.com/es-module-preloading-integrity#modulepreload-polyfill) est injecté automatiquement. Le polyfill est injecté automatiquement dans le module proxy de chaque entrée `index.html`. Si le build est configuré pour utiliser une entrée personnalisée non-HTML via `build.rollupOptions.input`, il est nécessaire d'importer manuellement le polyfill dans votre entrée personnalisée :
```js
import 'vite/modulepreload-polyfill'
```
-Note: the polyfill does **not** apply to [Library Mode](/guide/build#library-mode). If you need to support browsers without native dynamic import, you should probably avoid using it in your library.
+Note: le polyfill ne s'applique **pas** à [Mode Bibliothèque](/guide/build#library-mode). Si vous avez besoin de supporter les navigateurs sans importation dynamique native, vous devriez probablement l'éviter dans votre bibliothèque.
-The polyfill can be disabled using `{ polyfill: false }`.
+Le polyfill peut être désactivé en utilisant `{ polyfill: false }`.
-The list of chunks to preload for each dynamic import is computed by Vite. By default, an absolute path including the `base` will be used when loading these dependencies. If the `base` is relative (`''` or `'./'`), `import.meta.url` is used at runtime to avoid absolute paths that depend on the final deployed base.
+La liste des chunks à précharger pour chaque importation dynamique est calculée par Vite. Par défaut, un chemin absolu incluant le `base` sera utilisé lors du chargement de ces dépendances. Si le `base` est relatif (`''` ou `'./'`), `import.meta.url` est utilisé à l'exécution pour éviter les chemins absolus qui dépendent de la base déployée finalement.
-There is experimental support for fine grained control over the dependencies list and their paths using the `resolveDependencies` function. [Give Feedback](https://github.com/vitejs/vite/discussions/13841). It expects a function of type `ResolveModulePreloadDependenciesFn`:
+Il existe un support expérimental pour un contrôle plus fin de la liste des dépendances et de leurs chemins en utilisant la fonction `resolveDependencies`. [Faire un retour](https://github.com/vitejs/vite/discussions/13841). Il attend une fonction de type `ResolveModulePreloadDependenciesFn`:
```ts
type ResolveModulePreloadDependenciesFn = (
@@ -46,7 +46,7 @@ type ResolveModulePreloadDependenciesFn = (
) => string[]
```
-The `resolveDependencies` function will be called for each dynamic import with a list of the chunks it depends on, and it will also be called for each chunk imported in entry HTML files. A new dependencies array can be returned with these filtered or more dependencies injected, and their paths modified. The `deps` paths are relative to the `build.outDir`. The return value should be a relative path to the `build.outDir`.
+La fonction `resolveDependencies` sera appelée pour chaque importation dynamique avec une liste des chunks dont elle dépend, et elle sera également appelée pour chaque chunk importé dans les fichiers HTML d'entrée. Un nouveau tableau de dépendances peut être retourné avec ces dépendances filtrées ou plus de dépendances injectées, et leurs chemins modifiés. Les chemins `deps` sont relatifs à `build.outDir`. La valeur retournée doit être un chemin relatif à `build.outDir`.
```js twoslash
/** @type {import('vite').UserConfig} */
@@ -64,43 +64,43 @@ modulePreload: {
}
```
-The resolved dependency paths can be further modified using [`experimental.renderBuiltUrl`](../guide/build.md#advanced-base-options).
+Les chemins des dépendances résolus peuvent être modifiés davantage en utilisant [`experimental.renderBuiltUrl`](../guide/build.md#advanced-base-options).
## build.polyfillModulePreload
- **Type:** `boolean`
- **Default:** `true`
-- **Deprecated** use `build.modulePreload.polyfill` instead
+- **Déprécié** utilisez `build.modulePreload.polyfill` à la place
-Whether to automatically inject a [module preload polyfill](https://guybedford.com/es-module-preloading-integrity#modulepreload-polyfill).
+Détermine si un [polyfill de préchargement de module](https://guybedford.com/es-module-preloading-integrity#modulepreload-polyfill) doit être injecté automatiquement.
## build.outDir
- **Type:** `string`
- **Default:** `dist`
-Specify the output directory (relative to [project root](/guide/#index-html-and-project-root)).
+Spécifie le répertoire de sortie (relatif au [projet racine](/guide/#index-html-and-project-root)).
## build.assetsDir
- **Type:** `string`
- **Default:** `assets`
-Specify the directory to nest generated assets under (relative to `build.outDir`. This is not used in [Library Mode](/guide/build#library-mode)).
+Spécifie le répertoire à imbriquer sous les assets générés (relatif à `build.outDir`. Cette option n'est pas utilisée dans [Mode Bibliothèque](/guide/build#mode-bibliothèque)).
## build.assetsInlineLimit
- **Type:** `number` | `((filePath: string, content: Buffer) => boolean | undefined)`
- **Default:** `4096` (4 KiB)
-Imported or referenced assets that are smaller than this threshold will be inlined as base64 URLs to avoid extra http requests. Set to `0` to disable inlining altogether.
+Les assets importés ou référencés qui sont plus petits que ce seuil seront inlinés en tant que URL base64 pour éviter des requêtes HTTP supplémentaires. Définissez sur `0` pour désactiver l'inlining complètement.
-If a callback is passed, a boolean can be returned to opt-in or opt-out. If nothing is returned the default logic applies.
+Si une fonction est passée, un booléen peut être retourné pour opt-in ou opt-out. Si rien n'est retourné, la logique par défaut s'applique.
-Git LFS placeholders are automatically excluded from inlining because they do not contain the content of the file they represent.
+Les placeholders Git LFS sont automatiquement exclus de l'inlining car ils ne contiennent pas le contenu du fichier qu'ils représentent.
::: tip Note
-If you specify `build.lib`, `build.assetsInlineLimit` will be ignored and assets will always be inlined, regardless of file size or being a Git LFS placeholder.
+Si vous spécifiez `build.lib`, `build.assetsInlineLimit` sera ignoré et les assets seront toujours inlinés, quelle que soit la taille du fichier ou le fait qu'ils soient un placeholder Git LFS.
:::
## build.cssCodeSplit
@@ -108,12 +108,12 @@ If you specify `build.lib`, `build.assetsInlineLimit` will be ignored and assets
- **Type:** `boolean`
- **Default:** `true`
-Enable/disable CSS code splitting. When enabled, CSS imported in async JS chunks will be preserved as chunks and fetched together when the chunk is fetched.
+Active/désactive le fractionnement CSS. Lorsque c'est activé, les CSS importés dans les chunks JS asynchrones seront conservés comme chunks et récupérés ensemble lorsque le chunk est récupéré.
-If disabled, all CSS in the entire project will be extracted into a single CSS file.
+Si désactivé, tous les CSS dans le projet entier seront extraits dans un seul fichier CSS.
::: tip Note
-If you specify `build.lib`, `build.cssCodeSplit` will be `false` as default.
+Si vous spécifiez `build.lib`, `build.cssCodeSplit` sera `false` par défaut.
:::
## build.cssTarget
@@ -121,55 +121,55 @@ If you specify `build.lib`, `build.cssCodeSplit` will be `false` as default.
- **Type:** `string | string[]`
- **Default:** the same as [`build.target`](#build-target)
-This option allows users to set a different browser target for CSS minification from the one used for JavaScript transpilation.
+Cette option permet aux utilisateurs de définir une cible de navigateur différente pour la minification CSS par rapport à celle utilisée pour la transposition JavaScript.
-It should only be used when you are targeting a non-mainstream browser.
-One example is Android WeChat WebView, which supports most modern JavaScript features but not the [`#RGBA` hexadecimal color notation in CSS](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#rgb_colors).
-In this case, you need to set `build.cssTarget` to `chrome61` to prevent vite from transform `rgba()` colors into `#RGBA` hexadecimal notations.
+Elle ne doit être utilisée que lorsque vous ciblez un navigateur non-principal.
+Un exemple est le WebView Android WeChat, qui supporte la plupart des fonctionnalités JavaScript modernes mais pas la [notation hexadécimale `#RGBA` pour les couleurs CSS](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#rgb_colors).
+Dans ce cas, vous devez définir `build.cssTarget` à `chrome61` pour empêcher vite de transformer les couleurs `rgba()` en notation hexadécimale `#RGBA`.
## build.cssMinify
- **Type:** `boolean | 'esbuild' | 'lightningcss'`
- **Default:** the same as [`build.minify`](#build-minify) for client, `'esbuild'` for SSR
-This option allows users to override CSS minification specifically instead of defaulting to `build.minify`, so you can configure minification for JS and CSS separately. Vite uses `esbuild` by default to minify CSS. Set the option to `'lightningcss'` to use [Lightning CSS](https://lightningcss.dev/minification.html) instead. If selected, it can be configured using [`css.lightningcss`](./shared-options.md#css-lightningcss).
+Cette option permet aux utilisateurs de remplacer la minification CSS spécifiquement au lieu de définir `build.minify`, de sorte que vous pouvez configurer la minification pour JS et CSS séparément. Vite utilise `esbuild` par défaut pour minifier CSS. Définissez l'option sur `'lightningcss'` pour utiliser [Lightning CSS](https://lightningcss.dev/minification.html) à la place. Si sélectionné, il peut être configuré en utilisant [`css.lightningcss`](./shared-options.md#css-lightningcss).
## build.sourcemap
- **Type:** `boolean | 'inline' | 'hidden'`
- **Default:** `false`
-Generate production source maps. If `true`, a separate sourcemap file will be created. If `'inline'`, the sourcemap will be appended to the resulting output file as a data URI. `'hidden'` works like `true` except that the corresponding sourcemap comments in the bundled files are suppressed.
+Génère des sourcemap de production. Si `true`, un fichier de sourcemap distinct sera créé. Si `'inline'`, la sourcemap sera ajoutée au fichier de sortie final en tant que URI de données. `'hidden'` fonctionne comme `true` sauf que les commentaires de sourcemap correspondants dans les fichiers liés sont supprimés.
## build.rollupOptions
- **Type:** [`RollupOptions`](https://rollupjs.org/configuration-options/)
-Directly customize the underlying Rollup bundle. This is the same as options that can be exported from a Rollup config file and will be merged with Vite's internal Rollup options. See [Rollup options docs](https://rollupjs.org/configuration-options/) for more details.
+Personnalise directement le bundle Rollup sous-jacent. C'est la même chose que les options qui peuvent être exportées d'un fichier de configuration Rollup et seront fusionnées avec les options Rollup internes de Vite. Voir [docs Rollup options](https://rollupjs.org/configuration-options/) pour plus de détails.
## build.commonjsOptions
- **Type:** [`RollupCommonJSOptions`](https://github.com/rollup/plugins/tree/master/packages/commonjs#options)
-Options to pass on to [@rollup/plugin-commonjs](https://github.com/rollup/plugins/tree/master/packages/commonjs).
+Options à passer à [@rollup/plugin-commonjs](https://github.com/rollup/plugins/tree/master/packages/commonjs).
## build.dynamicImportVarsOptions
- **Type:** [`RollupDynamicImportVarsOptions`](https://github.com/rollup/plugins/tree/master/packages/dynamic-import-vars#options)
- **Related:** [Dynamic Import](/guide/features#dynamic-import)
-Options to pass on to [@rollup/plugin-dynamic-import-vars](https://github.com/rollup/plugins/tree/master/packages/dynamic-import-vars).
+Options à passer à [@rollup/plugin-dynamic-import-vars](https://github.com/rollup/plugins/tree/master/packages/dynamic-import-vars).
## build.lib
- **Type:** `{ entry: string | string[] | { [entryAlias: string]: string }, name?: string, formats?: ('es' | 'cjs' | 'umd' | 'iife')[], fileName?: string | ((format: ModuleFormat, entryName: string) => string), cssFileName?: string }`
- **Related:** [Library Mode](/guide/build#library-mode)
-Build as a library. `entry` is required since the library cannot use HTML as entry. `name` is the exposed global variable and is required when `formats` includes `'umd'` or `'iife'`. Default `formats` are `['es', 'umd']`, or `['es', 'cjs']`, if multiple entries are used.
+Construit comme une bibliothèque. `entry` est requis puisque la bibliothèque ne peut pas utiliser HTML comme entrée. `name` est la variable globale exposée et est requise lorsque `formats` inclut `'umd'` ou `'iife'`. Les `formats` par défaut sont `['es', 'umd']`, ou `['es', 'cjs']`, si plusieurs entrées sont utilisées.
-`fileName` is the name of the package file output, which defaults to the `"name"` in `package.json`. It can also be defined as a function taking the `format` and `entryName` as arguments, and returning the file name.
+`fileName` est le nom du fichier de sortie de la bibliothèque, qui par défaut est le `"name"` dans `package.json`. Il peut également être défini comme une fonction prenant le `format` et `entryName` comme arguments, et retournant le nom du fichier.
-If your package imports CSS, `cssFileName` can be used to specify the name of the CSS file output. It defaults to the same value as `fileName` if it's set a string, otherwise it also falls back to the `"name"` in `package.json`.
+Si votre package importe des CSS, `cssFileName` peut être utilisé pour spécifier le nom du fichier CSS de sortie. Il a par défaut la même valeur que `fileName` si c'est une chaîne, sinon il reprend `"name"` dans `package.json`.
```js twoslash [vite.config.js]
import { defineConfig } from 'vite'
@@ -191,9 +191,9 @@ export default defineConfig({
- **Default:** `false`
- **Related:** [Backend Integration](/guide/backend-integration)
-Whether to generate a manifest file that contains a mapping of non-hashed asset filenames to their hashed versions, which can then be used by a server framework to render the correct asset links.
+Détermine si on génére un fichier manifeste qui contient une table de correspondance des noms de fichiers des assets (non hachés) vers leurs versions hachées, ce qui peut ensuite être utilisé par un framework de serveur pour rendre les liens corrects des assets.
-When the value is a string, it will be used as the manifest file path relative to `build.outDir`. When set to `true`, the path would be `.vite/manifest.json`.
+Lorsque la valeur est une chaîne, elle sera utilisée comme chemin vers le fichier manifeste par rapport à `build.outDir`. Lorsque défini sur `true`, le chemin sera `.vite/manifest.json`.
## build.ssrManifest
@@ -201,9 +201,9 @@ When the value is a string, it will be used as the manifest file path relative t
- **Default:** `false`
- **Related:** [Server-Side Rendering](/guide/ssr)
-Whether to generate a SSR manifest file for determining style links and asset preload directives in production.
+Détermine si un manifeste SSR pour définir les liens de style et les directives de préchargement des assets en production.
-When the value is a string, it will be used as the manifest file path relative to `build.outDir`. When set to `true`, the path would be `.vite/ssr-manifest.json`.
+Lorsque la valeur est une chaîne, elle sera utilisée comme chemin vers le fichier manifeste par rapport à `build.outDir`. Lorsque défini sur `true`, le chemin sera `.vite/ssr-manifest.json`.
## build.ssr
@@ -211,32 +211,32 @@ When the value is a string, it will be used as the manifest file path relative t
- **Default:** `false`
- **Related:** [Server-Side Rendering](/guide/ssr)
-Produce SSR-oriented build. The value can be a string to directly specify the SSR entry, or `true`, which requires specifying the SSR entry via `rollupOptions.input`.
+Produit un build orienté SSR. La valeur peut être une chaîne pour spécifier directement l'entrée SSR, ou `true`, qui nécessite de spécifier l'entrée SSR via `rollupOptions.input`.
## build.emitAssets
- **Type:** `boolean`
- **Default:** `false`
-During non-client builds, static assets aren't emitted as it is assumed they would be emitted as part of the client build. This option allows frameworks to force emitting them in other environments build. It is responsibility of the framework to merge the assets with a post build step.
+Lors de la construction non-client, les assets statiques ne sont pas émis car il est supposé qu'ils seraient émis comme partie du build client. Cette option permet aux frameworks de forcer leur émission dans d'autres environnements de construction. Il est de la responsabilité du framework de fusionner les assets avec une étape de post-construction.
## build.ssrEmitAssets
- **Type:** `boolean`
- **Default:** `false`
-During the SSR build, static assets aren't emitted as it is assumed they would be emitted as part of the client build. This option allows frameworks to force emitting them in both the client and SSR build. It is responsibility of the framework to merge the assets with a post build step. This option will be replaced by `build.emitAssets` once Environment API is stable.
+Lors de la construction SSR, les assets statiques ne sont pas émis car il est supposé qu'ils seraient émis comme partie du build client. Cette option permet aux frameworks de forcer leur émission dans les builds client et SSR. Il est de la responsabilité du framework de fusionner les assets avec une étape de post-construction. Cette option sera remplacée par `build.emitAssets` une fois que l'API Environment sera stable.
## build.minify
- **Type:** `boolean | 'terser' | 'esbuild'`
- **Default:** `'esbuild'` for client build, `false` for SSR build
-Set to `false` to disable minification, or specify the minifier to use. The default is [esbuild](https://github.com/evanw/esbuild) which is 20 ~ 40x faster than terser and only 1 ~ 2% worse compression. [Benchmarks](https://github.com/privatenumber/minification-benchmarks)
+Définissez sur `false` pour désactiver la minification, ou spécifiez le minificateur à utiliser. La valeur par défaut est [esbuild](https://github.com/evanw/esbuild) qui est 20 ~ 40x plus rapide que terser et seulement 1 ~ 2% moins compressé. [Benchmarks](https://github.com/privatenumber/minification-benchmarks)
-Note the `build.minify` option does not minify whitespaces when using the `'es'` format in lib mode, as it removes pure annotations and breaks tree-shaking.
+Notez que l'option `build.minify` ne minifie pas les espaces blancs lors de l'utilisation du format `'es'` dans le mode bibliothèque, car il supprime les annotations pures et casse le tree-shaking.
-Terser must be installed when it is set to `'terser'`.
+Terser doit être installé lorsque c'est défini sur `'terser'`.
```sh
npm add -D terser
@@ -246,55 +246,55 @@ npm add -D terser
- **Type:** `TerserOptions`
-Additional [minify options](https://terser.org/docs/api-reference#minify-options) to pass on to Terser.
+Options supplémentaires [minify options](https://terser.org/docs/api-reference#minify-options) à passer à Terser.
-In addition, you can also pass a `maxWorkers: number` option to specify the max number of workers to spawn. Defaults to the number of CPUs minus 1.
+Vous pouvez également passer une option `maxWorkers: number` pour spécifier le nombre maximum de workers à lancer. Par défaut, le nombre de CPU moins 1.
## build.write
- **Type:** `boolean`
- **Default:** `true`
-Set to `false` to disable writing the bundle to disk. This is mostly used in [programmatic `build()` calls](/guide/api-javascript#build) where further post processing of the bundle is needed before writing to disk.
+Définissez sur `false` pour désactiver l'écriture du bundle sur le disque. Cette option est principalement utilisée dans les [appels programmatiques `build()`](/guide/api-javascript#build) où une post-traitement supplémentaire du bundle est nécessaire avant l'écriture sur le disque.
## build.emptyOutDir
- **Type:** `boolean`
- **Default:** `true` if `outDir` is inside `root`
-By default, Vite will empty the `outDir` on build if it is inside project root. It will emit a warning if `outDir` is outside of root to avoid accidentally removing important files. You can explicitly set this option to suppress the warning. This is also available via command line as `--emptyOutDir`.
+Par défaut, Vite videra le `outDir` lors de la construction si c'est à l'intérieur du projet racine. Il émettra un avertissement si `outDir` est en dehors de la racine pour éviter de supprimer accidentellement des fichiers importants. Vous pouvez explicitement définir cette option pour supprimer l'avertissement. Cette option est également disponible via la ligne de commande avec `--emptyOutDir`.
## build.copyPublicDir
- **Type:** `boolean`
- **Default:** `true`
-By default, Vite will copy files from the `publicDir` into the `outDir` on build. Set to `false` to disable this.
+Par défaut, Vite copiera les fichiers du `publicDir` dans le `outDir` lors de la construction. Définissez sur `false` pour désactiver cela.
## build.reportCompressedSize
- **Type:** `boolean`
- **Default:** `true`
-Enable/disable gzip-compressed size reporting. Compressing large output files can be slow, so disabling this may increase build performance for large projects.
+Active/désactive le rapport de taille compressée gzip. Compresser les gros fichiers de sortie peut être lent, donc désactiver cela peut augmenter les performances de build pour les gros projets.
## build.chunkSizeWarningLimit
- **Type:** `number`
- **Default:** `500`
-Limit for chunk size warnings (in kB). It is compared against the uncompressed chunk size as the [JavaScript size itself is related to the execution time](https://v8.dev/blog/cost-of-javascript-2019).
+Limite pour les avertissements de taille de chunk (en kB). Il est comparé à la taille du chunk non compressé car la [taille du JavaScript elle-même est liée au temps d'exécution](https://v8.dev/blog/cost-of-javascript-2019).
## build.watch
- **Type:** [`WatcherOptions`](https://rollupjs.org/configuration-options/#watch)`| null`
- **Default:** `null`
-Set to `{}` to enable rollup watcher. This is mostly used in cases that involve build-only plugins or integrations processes.
+Définissez sur `{}` pour activer le watcher Rollup. Cette option est principalement utilisée dans les cas impliquant des plugins ou des processus de build uniquement.
-::: warning Using Vite on Windows Subsystem for Linux (WSL) 2
+::: warning Utilisation de Vite sur Windows Subsystem pour Linux (WSL) 2
-There are cases that file system watching does not work with WSL2.
-See [`server.watch`](./server-options.md#server-watch) for more details.
+Il existe des cas où le système de fichier ne fonctionne pas avec WSL2.
+Voir [`server.watch`](./server-options.md#server-watch) pour plus de détails.
:::
diff --git a/docs/config/dep-optimization-options.md b/docs/config/dep-optimization-options.md
index 70d338a..3323fdf 100644
--- a/docs/config/dep-optimization-options.md
+++ b/docs/config/dep-optimization-options.md
@@ -1,25 +1,25 @@
-# Dep Optimization Options
+# Options d'optimisation de dépendances
-- **Related:** [Dependency Pre-Bundling](/guide/dep-pre-bundling)
+- **Connexe :** [Pré-building des dépendances](/guide/dep-pre-bundling)
-Unless noted, the options in this section are only applied to the dependency optimizer, which is only used in dev.
+Sauf mention contraire, les options de cette section ne s'appliquent qu'à l'optimiseur de dépendances, qui n'est utilisé qu'en développement.
## optimizeDeps.entries
-- **Type:** `string | string[]`
+- **Type :** `string | string[]`
-By default, Vite will crawl all your `.html` files to detect dependencies that need to be pre-bundled (ignoring `node_modules`, `build.outDir`, `__tests__` and `coverage`). If `build.rollupOptions.input` is specified, Vite will crawl those entry points instead.
+Par défaut, Vite parcourt tous vos fichiers `.html` pour détecter les dépendances qui doivent être pré-buildé (en ignorant `node_modules`, `build.outDir`, `__tests__` et `coverage`). Si `build.rollupOptions.input` est spécifié, Vite parcourra ces points d'entrée à la place.
-If neither of these fit your needs, you can specify custom entries using this option - the value should be a [`tinyglobby` pattern](https://github.com/SuperchupuDev/tinyglobby) or array of patterns that are relative from Vite project root. This will overwrite default entries inference. Only `node_modules` and `build.outDir` folders will be ignored by default when `optimizeDeps.entries` is explicitly defined. If other folders need to be ignored, you can use an ignore pattern as part of the entries list, marked with an initial `!`. If you don't want to ignore `node_modules` and `build.outDir`, you can specify using literal string paths (without `tinyglobby` patterns) instead.
+Si aucune de ces options ne correspond à vos besoins, vous pouvez spécifier des entrées personnalisées en utilisant cette option - la valeur doit être un [modèle `tinyglobby`](https://github.com/SuperchupuDev/tinyglobby) ou un tableau de pattern relatifs à la racine du projet Vite. Cela écrasera l'inférence d'entrées par défaut. Seuls les dossiers `node_modules` et `build.outDir` seront ignorés par défaut lorsque `optimizeDeps.entries` est explicitement défini. Si d'autres dossiers doivent être ignorés, vous pouvez utiliser un modèle d'ignore dans la liste des entrées, marqué par un `!` initial. Si vous ne souhaitez pas ignorer `node_modules` et `build.outDir`, vous pouvez spécifier en utilisant des chemins de chaînes littérales (sans pattern `tinyglobby`) à la place.
## optimizeDeps.exclude
-- **Type:** `string[]`
+- **Type :** `string[]`
-Dependencies to exclude from pre-bundling.
+Dépendances à exclure du pré-building.
:::warning CommonJS
-CommonJS dependencies should not be excluded from optimization. If an ESM dependency is excluded from optimization, but has a nested CommonJS dependency, the CommonJS dependency should be added to `optimizeDeps.include`. Example:
+Les dépendances CommonJS ne doivent pas être exclues de l'optimisation. Si une dépendance ESM est exclue de l'optimisation, mais possède une dépendance CommonJS imbriquée, la dépendance CommonJS doit être ajoutée à `optimizeDeps.include`. Exemple :
```js twoslash
import { defineConfig } from 'vite'
@@ -35,11 +35,11 @@ export default defineConfig({
## optimizeDeps.include
-- **Type:** `string[]`
+- **Type :** `string[]`
-By default, linked packages not inside `node_modules` are not pre-bundled. Use this option to force a linked package to be pre-bundled.
+Par défaut, les packages liés qui ne sont pas dans `node_modules` ne sont pas pré-buildés. Utilisez cette option pour forcer un package lié à être pré-buildés.
-**Experimental:** If you're using a library with many deep imports, you can also specify a trailing glob pattern to pre-bundle all deep imports at once. This will avoid constantly pre-bundling whenever a new deep import is used. [Give Feedback](https://github.com/vitejs/vite/discussions/15833). For example:
+**Expérimental :** Si vous utilisez une bibliothèque avec de nombreux imports profonds, vous pouvez également spécifier un modèle glob à la fin pour pré-builder toutes les importations profondes en une seule fois. Cela évitera de constamment pré-builder chaque fois qu'un nouvel importat profond est utilisé. [Donnez votre avis](https://github.com/vitejs/vite/discussions/15833). Par exemple :
```js twoslash
import { defineConfig } from 'vite'
@@ -53,7 +53,7 @@ export default defineConfig({
## optimizeDeps.esbuildOptions
-- **Type:** [`Omit`](https://www.typescriptlang.org/docs/handbook/utility-types.html#omittype-keys)`<`[`EsbuildBuildOptions`](https://esbuild.github.io/api/#general-options)`,
+- **Type :** [`Omit`](https://www.typescriptlang.org/docs/handbook/utility-types.html#omittype-keys)`<`[`EsbuildBuildOptions`](https://esbuild.github.io/api/#general-options)`,
| 'bundle'
| 'entryPoints'
| 'external'
@@ -65,45 +65,45 @@ export default defineConfig({
| 'outExtension'
| 'metafile'>`
-Options to pass to esbuild during the dep scanning and optimization.
+Options à transmettre à esbuild pendant l'analyse et l'optimisation des dépendances.
-Certain options are omitted since changing them would not be compatible with Vite's dep optimization.
+Certaines options sont omises car leur modification ne serait pas compatible avec l'optimisation des dépendances de Vite.
-- `external` is also omitted, use Vite's `optimizeDeps.exclude` option
-- `plugins` are merged with Vite's dep plugin
+- `external` est également omis, utilisez l'option `optimizeDeps.exclude` de Vite
+- Les `plugins` sont fusionnés avec le plugin de dépendances de Vite
## optimizeDeps.force
-- **Type:** `boolean`
+- **Type :** `boolean`
-Set to `true` to force dependency pre-bundling, ignoring previously cached optimized dependencies.
+Définissez sur `true` pour forcer le pré-building des dépendances, en ignorant les dépendances optimisées précédemment mises en cache.
## optimizeDeps.holdUntilCrawlEnd
-- **Experimental:** [Give Feedback](https://github.com/vitejs/vite/discussions/15834)
-- **Type:** `boolean`
-- **Default:** `true`
+- **Expérimental :** [Donnez votre avis](https://github.com/vitejs/vite/discussions/15834)
+- **Type :** `boolean`
+- **Défaut :** `true`
-When enabled, it will hold the first optimized deps results until all static imports are crawled on cold start. This avoids the need for full-page reloads when new dependencies are discovered and they trigger the generation of new common chunks. If all dependencies are found by the scanner plus the explicitly defined ones in `include`, it is better to disable this option to let the browser process more requests in parallel.
+Lorsqu'elle est activée, cette option retient les premiers résultats des dépendances optimisées jusqu'à ce que toutes les importations statiques soient parcourues au démarrage à froid. Cela évite la nécessité de rechargements complets de page lorsque de nouvelles dépendances sont découvertes et qu'elles déclenchent la génération de nouveaux fragments communs. Si toutes les dépendances sont trouvées par le scanner plus celles explicitement définies dans `include`, il est préférable de désactiver cette option pour permettre au navigateur de traiter plus de requêtes en parallèle.
## optimizeDeps.disabled
-- **Deprecated**
-- **Experimental:** [Give Feedback](https://github.com/vitejs/vite/discussions/13839)
-- **Type:** `boolean | 'build' | 'dev'`
-- **Default:** `'build'`
+- **Déprécié**
+- **Expérimental :** [Donnez votre avis](https://github.com/vitejs/vite/discussions/13839)
+- **Type :** `boolean | 'build' | 'dev'`
+- **Défaut :** `'build'`
-This option is deprecated. As of Vite 5.1, pre-bundling of dependencies during build have been removed. Setting `optimizeDeps.disabled` to `true` or `'dev'` disables the optimizer, and configured to `false` or `'build'` leaves the optimizer during dev enabled.
+Cette option est dépréciée. Depuis Vite 5.1, le pré-build des dépendances pendant la construction a été supprimé. Définir `optimizeDeps.disabled` sur `true` ou `'dev'` désactive l'optimiseur, et le configurer sur `false` ou `'build'` laisse l'optimiseur activé pendant le développement.
-To disable the optimizer completely, use `optimizeDeps.noDiscovery: true` to disallow automatic discovery of dependencies and leave `optimizeDeps.include` undefined or empty.
+Pour désactiver complètement l'optimiseur, utilisez `optimizeDeps.noDiscovery: true` pour interdire la découverte automatique des dépendances et laissez `optimizeDeps.include` non défini ou vide.
:::warning
-Optimizing dependencies during build time was an **experimental** feature. Projects trying out this strategy also removed `@rollup/plugin-commonjs` using `build.commonjsOptions: { include: [] }`. If you did so, a warning will guide you to re-enable it to support CJS only packages while bundling.
+L'optimisation des dépendances pendant la phase de build était une fonctionnalité **expérimentale**. Les projets essayant cette stratégie ont également supprimé `@rollup/plugin-commonjs` en utilisant `build.commonjsOptions: { include: [] }`. Si vous l'avez utilisé, un avertissement vous guidera pour le réactiver afin de prendre en charge les packages CJS uniquement pendant le build.
:::
## optimizeDeps.needsInterop
-- **Experimental**
-- **Type:** `string[]`
+- **Expérimental**
+- **Type :** `string[]`
-Forces ESM interop when importing these dependencies. Vite is able to properly detect when a dependency needs interop, so this option isn't generally needed. However, different combinations of dependencies could cause some of them to be prebundled differently. Adding these packages to `needsInterop` can speed up cold start by avoiding full-page reloads. You'll receive a warning if this is the case for one of your dependencies, suggesting to add the package name to this array in your config.
+Force l'interopérabilité ESM lors de l'importation de ces dépendances. Vite est capable de détecter correctement quand une dépendance a besoin d'interopérabilité, donc cette option n'est généralement pas nécessaire. Cependant, différentes combinaisons de dépendances pourraient amener certaines d'entre elles à être pré-buildé différemment. Ajouter ces packages à `needsInterop` peut accélérer le démarrage à froid en évitant les rechargements complets de page. Vous recevrez un avertissement si c'est le cas pour l'une de vos dépendances, suggérant d'ajouter le nom du package à ce tableau dans votre configuration.
diff --git a/docs/config/index.md b/docs/config/index.md
index 02a9719..65e3745 100644
--- a/docs/config/index.md
+++ b/docs/config/index.md
@@ -1,36 +1,36 @@
---
-title: Configuring Vite
+title: Configurer Vite
---
-# Configuring Vite
+# Configurer Vite
-When running `vite` from the command line, Vite will automatically try to resolve a config file named `vite.config.js` inside [project root](/guide/#index-html-and-project-root) (other JS and TS extensions are also supported).
+Lorsque vous exécutez `vite` depuis la ligne de commande, Vite essaiera automatiquement de trouver un fichier de configuration nommé `vite.config.js` dans la [racine du projet](/guide/#index-html-and-project-root) (les autres extensions JS et TS sont également prises en charge).
-The most basic config file looks like this:
+Le fichier de configuration le plus basique ressemble à ceci :
```js [vite.config.js]
export default {
- // config options
+ // options de configuration
}
```
-Note Vite supports using ES modules syntax in the config file even if the project is not using native Node ESM, e.g. `type: "module"` in `package.json`. In this case, the config file is auto pre-processed before load.
+Notez que Vite prend en charge l'utilisation de la syntaxe des modules ES dans le fichier de configuration, même si le projet n'utilise pas les modules ESM natifs de Node, par exemple `type: "module"` dans `package.json`. Dans ce cas, le fichier de configuration est automatiquement prétraité avant d'être chargé.
-You can also explicitly specify a config file to use with the `--config` CLI option (resolved relative to `cwd`):
+Vous pouvez également spécifier explicitement un fichier de configuration à utiliser avec l'option CLI `--config` (résolu de manière relative à `cwd`) :
```bash
-vite --config my-config.js
+vite --config ma-config.js
```
-::: tip CONFIG LOADING
-By default, Vite uses `esbuild` to bundle the config into a temporary file and load it. This may cause issues when importing TypeScript files in a monorepo. If you encounter any issues with this approach, you can specify `--configLoader runner` to use the [module runner](/guide/api-environment-runtimes.html#modulerunner) instead, which will not create a temporary config and will transform any files on the fly. Note that module runner doesn't support CJS in config files, but external CJS packages should work as usual.
+::: tip CHARGEMENT DE LA CONFIGURATION
+Par défaut, Vite utilise `esbuild` pour empaqueter la configuration dans un fichier temporaire et le charger. Cela peut causer des problèmes lors de l'importation de fichiers TypeScript dans un monorepo. Si vous rencontrez des problèmes avec cette approche, vous pouvez spécifier `--configLoader runner` pour utiliser le [module runner](/guide/api-environment-runtimes.html#modulerunner) à la place, qui ne créera pas de configuration temporaire et transformera les fichiers à la volée. Notez que le module runner ne prend pas en charge CJS dans les fichiers de configuration, mais les paquets CJS externes devraient fonctionner comme d'habitude.
-Alternatively, if you're using an environment that supports TypeScript (e.g. `node --experimental-strip-types`), or if you're only writing plain JavaScript, you can specify `--configLoader native` to use the environment's native runtime to load the config file. Note that updates to modules imported by the config file are not detected and hence would not auto-restart the Vite server.
+Alternativement, si vous utilisez un environnement qui prend en charge TypeScript (par exemple `node --experimental-strip-types`), ou si vous n'écrivez que du JavaScript simple, vous pouvez spécifier `--configLoader native` pour utiliser l'environnement d'exécution natif pour charger le fichier de configuration. Notez que les mises à jour des modules importés par le fichier de configuration ne sont pas détectées et ne redémarreront donc pas automatiquement le serveur Vite.
:::
-## Config Intellisense
+## Configurer Intellisense
-Since Vite ships with TypeScript typings, you can leverage your IDE's intellisense with jsdoc type hints:
+Comme Vite est livré avec des typages TypeScript, vous pouvez profiter de l'intellisense de votre IDE avec des indications de type jsdoc :
```js
/** @type {import('vite').UserConfig} */
@@ -39,7 +39,7 @@ export default {
}
```
-Alternatively, you can use the `defineConfig` helper which should provide intellisense without the need for jsdoc annotations:
+Alternativement, vous pouvez utiliser l'assistant `defineConfig` qui devrait fournir l'intellisense sans avoir besoin d'annotations jsdoc :
```js
import { defineConfig } from 'vite'
@@ -49,7 +49,7 @@ export default defineConfig({
})
```
-Vite also supports TypeScript config files. You can use `vite.config.ts` with the `defineConfig` helper function above, or with the `satisfies` operator:
+Vite prend également en charge les fichiers de configuration TypeScript. Vous pouvez utiliser `vite.config.ts` avec la fonction d'assistance `defineConfig` ci-dessus, ou avec l'opérateur `satisfies` :
```ts
import type { UserConfig } from 'vite'
@@ -59,9 +59,9 @@ export default {
} satisfies UserConfig
```
-## Conditional Config
+## Configuration conditionnelle
-If the config needs to conditionally determine options based on the command (`serve` or `build`), the [mode](/guide/env-and-mode#modes) being used, if it's an SSR build (`isSsrBuild`), or is previewing the build (`isPreview`), it can export a function instead:
+Si la configuration doit déterminer conditionnellement des options en fonction de la commande (`serve` ou `build`), du [mode](/guide/env-and-mode#modes) utilisé, s'il s'agit d'une construction SSR (`isSsrBuild`), ou de la prévisualisation de la construction (`isPreview`), elle peut exporter une fonction à la place :
```js twoslash
import { defineConfig } from 'vite'
@@ -69,24 +69,24 @@ import { defineConfig } from 'vite'
export default defineConfig(({ command, mode, isSsrBuild, isPreview }) => {
if (command === 'serve') {
return {
- // dev specific config
+ // configuration spécifique au développement
}
} else {
// command === 'build'
return {
- // build specific config
+ // configuration spécifique à la construction
}
}
})
```
-It is important to note that in Vite's API the `command` value is `serve` during dev (in the cli [`vite`](/guide/cli#vite), `vite dev`, and `vite serve` are aliases), and `build` when building for production ([`vite build`](/guide/cli#vite-build)).
+Il est important de noter que dans l'API de Vite, la valeur de `command` est `serve` pendant le développement (dans la CLI [`vite`](/guide/cli#vite), `vite dev`, et `vite serve` sont des alias), et `build` lors de la construction pour la production ([`vite build`](/guide/cli#vite-build)).
-`isSsrBuild` and `isPreview` are additional optional flags to differentiate the kind of `build` and `serve` commands respectively. Some tools that load the Vite config may not support these flags and will pass `undefined` instead. Hence, it's recommended to use explicit comparison against `true` and `false`.
+`isSsrBuild` et `isPreview` sont des arguments optionnels supplémentaires pour différencier le type de commandes `build` et `serve` respectivement. Certains outils qui chargent la configuration Vite peuvent ne pas prendre en charge ces arguments et passeront `undefined` à la place. Par conséquent, il est recommandé d'utiliser une comparaison explicite avec `true` et `false`.
-## Async Config
+## Configuration asynchrone
-If the config needs to call async functions, it can export an async function instead. And this async function can also be passed through `defineConfig` for improved intellisense support:
+Si la configuration doit appeler des fonctions asynchrones, elle peut exporter une fonction asynchrone à la place. Cette fonction asynchrone peut également être passée par `defineConfig` pour une meilleure prise en charge de l'intellisense :
```js twoslash
import { defineConfig } from 'vite'
@@ -94,27 +94,27 @@ import { defineConfig } from 'vite'
export default defineConfig(async ({ command, mode }) => {
const data = await asyncFunction()
return {
- // vite config
+ // configuration vite
}
})
```
-## Using Environment Variables in Config
+## Utilisation des variables d'environnement dans la configuration
-Environmental Variables can be obtained from `process.env` as usual.
+Les variables d'environnement peuvent être obtenues à partir de `process.env` comme d'habitude.
-Note that Vite doesn't load `.env` files by default as the files to load can only be determined after evaluating the Vite config, for example, the `root` and `envDir` options affect the loading behaviour. However, you can use the exported `loadEnv` helper to load the specific `.env` file if needed.
+Notez que Vite ne charge pas les fichiers `.env` par défaut car les fichiers à charger ne peuvent être déterminés qu'après avoir évalué la configuration Vite, par exemple, les options `root` et `envDir` affectent le comportement de chargement. Cependant, vous pouvez utiliser l'assistant exporté `loadEnv` pour charger le fichier `.env` spécifique si nécessaire.
```js twoslash
import { defineConfig, loadEnv } from 'vite'
export default defineConfig(({ mode }) => {
- // Load env file based on `mode` in the current working directory.
- // Set the third parameter to '' to load all env regardless of the
- // `VITE_` prefix.
+ // Charge le fichier d'environnement basé sur `mode` dans le répertoire de travail actuel.
+ // Définit le troisième paramètre à '' pour charger tous les env indépendamment
+ // du préfixe `VITE_`.
const env = loadEnv(mode, process.cwd(), '')
return {
- // vite config
+ // configuration vite
define: {
__APP_ENV__: JSON.stringify(env.APP_ENV),
},
diff --git a/docs/config/preview-options.md b/docs/config/preview-options.md
index 5f95461..2c0b572 100644
--- a/docs/config/preview-options.md
+++ b/docs/config/preview-options.md
@@ -1,41 +1,41 @@
-# Preview Options
+# Options de prévisualisation
-Unless noted, the options in this section are only applied to preview.
+Sauf indication contraire, les options de cette section ne s'appliquent qu'à la prévisualisation.
## preview.host
-- **Type:** `string | boolean`
-- **Default:** [`server.host`](./server-options#server-host)
+- **Type :** `string | boolean`
+- **Défaut :** [`server.host`](./server-options#server-host)
-Specify which IP addresses the server should listen on.
-Set this to `0.0.0.0` or `true` to listen on all addresses, including LAN and public addresses.
+Spécifie les adresses IP sur lesquelles le serveur doit écouter.
+Définissez cette option sur `0.0.0.0` ou `true` pour écouter sur toutes les adresses, y compris les réseaux locaux et les adresses publiques.
-This can be set via the CLI using `--host 0.0.0.0` or `--host`.
+Cette option peut être définie via la CLI en utilisant `--host 0.0.0.0` ou `--host`.
-::: tip NOTE
+::: tip REMARQUE
-There are cases when other servers might respond instead of Vite.
-See [`server.host`](./server-options#server-host) for more details.
+Il existe des cas où d'autres serveurs pourraient répondre à la place de Vite.
+Consultez [`server.host`](./server-options#server-host) pour plus de détails.
:::
## preview.allowedHosts
-- **Type:** `string | true`
-- **Default:** [`server.allowedHosts`](./server-options#server-allowedhosts)
+- **Type :** `string | true`
+- **Défaut :** [`server.allowedHosts`](./server-options#server-allowedhosts)
-The hostnames that Vite is allowed to respond to.
+Les hostnames auxquels Vite est autorisé à répondre.
-See [`server.allowedHosts`](./server-options#server-allowedhosts) for more details.
+Consultez [`server.allowedHosts`](./server-options#server-allowedhosts) pour plus de détails.
## preview.port
-- **Type:** `number`
-- **Default:** `4173`
+- **Type :** `number`
+- **Défaut :** `4173`
-Specify server port. Note if the port is already being used, Vite will automatically try the next available port so this may not be the actual port the server ends up listening on.
+Spécifie le port du serveur. Notez que si le port est déjà utilisé, Vite essaiera automatiquement le prochain port disponible, ce ne sera donc pas forcement le port réel sur lequel le serveur finira par écouter.
-**Example:**
+**Exemple :**
```js
export default defineConfig({
@@ -50,49 +50,49 @@ export default defineConfig({
## preview.strictPort
-- **Type:** `boolean`
-- **Default:** [`server.strictPort`](./server-options#server-strictport)
+- **Type :** `boolean`
+- **Défaut :** [`server.strictPort`](./server-options#server-strictport)
-Set to `true` to exit if port is already in use, instead of automatically trying the next available port.
+Définissez sur `true` pour quitter si le port est déjà utilisé, au lieu d'essayer automatiquement le prochain port disponible.
## preview.https
-- **Type:** `https.ServerOptions`
-- **Default:** [`server.https`](./server-options#server-https)
+- **Type :** `https.ServerOptions`
+- **Défaut :** [`server.https`](./server-options#server-https)
-Enable TLS + HTTP/2.
+Active TLS + HTTP/2.
-See [`server.https`](./server-options#server-https) for more details.
+Voir [`server.https`](./server-options#server-https) pour plus de détails.
## preview.open
-- **Type:** `boolean | string`
-- **Default:** [`server.open`](./server-options#server-open)
+- **Type :** `boolean | string`
+- **Défaut :** [`server.open`](./server-options#server-open)
-Automatically open the app in the browser on server start. When the value is a string, it will be used as the URL's pathname. If you want to open the server in a specific browser you like, you can set the env `process.env.BROWSER` (e.g. `firefox`). You can also set `process.env.BROWSER_ARGS` to pass additional arguments (e.g. `--incognito`).
+Ouvre automatiquement l'application dans le navigateur au démarrage du serveur. Lorsque la valeur est une chaîne de caractères, elle sera utilisée comme chemin de l'URL. Si vous souhaitez ouvrir le serveur dans un navigateur spécifique, vous pouvez définir la variable d'environnement `process.env.BROWSER` (par exemple `firefox`). Vous pouvez également définir `process.env.BROWSER_ARGS` pour passer des arguments supplémentaires (par exemple `--incognito`).
-`BROWSER` and `BROWSER_ARGS` are also special environment variables you can set in the `.env` file to configure it. See [the `open` package](https://github.com/sindresorhus/open#app) for more details.
+`BROWSER` et `BROWSER_ARGS` sont également des variables d'environnement spéciales que vous pouvez définir dans le fichier `.env` pour les configurer. Consultez [le package `open`](https://github.com/sindresorhus/open#app) pour plus de détails.
## preview.proxy
-- **Type:** `Record`
-- **Default:** [`server.proxy`](./server-options#server-proxy)
+- **Type :** `Record`
+- **Défaut :** [`server.proxy`](./server-options#server-proxy)
-Configure custom proxy rules for the preview server. Expects an object of `{ key: options }` pairs. If the key starts with `^`, it will be interpreted as a `RegExp`. The `configure` option can be used to access the proxy instance.
+Configure des règles de proxy personnalisées pour le serveur de prévisualisation. S'attend à un objet de paires `{ clef: options }`. Si la clef commence par `^`, elle sera interprétée comme une `RegExp`. L'option `configure` peut être utilisée pour accéder à l'instance de proxy.
-Uses [`http-proxy`](https://github.com/http-party/node-http-proxy). Full options [here](https://github.com/http-party/node-http-proxy#options).
+Utilise [`http-proxy`](https://github.com/http-party/node-http-proxy). Options complètes [ici](https://github.com/http-party/node-http-proxy#options).
## preview.cors
-- **Type:** `boolean | CorsOptions`
-- **Default:** [`server.cors`](./server-options#server-cors)
+- **Type :** `boolean | CorsOptions`
+- **Défaut :** [`server.cors`](./server-options#server-cors)
-Configure CORS for the preview server.
+Configure les CORS pour le serveur de prévisualisation.
-See [`server.cors`](./server-options#server-cors) for more details.
+Consultez [`server.cors`](./server-options#server-cors) pour plus de détails.
## preview.headers
-- **Type:** `OutgoingHttpHeaders`
+- **Type :** `OutgoingHttpHeaders`
-Specify server response headers.
+Spécifie les en-têtes de réponse du serveur.
diff --git a/docs/config/server-options.md b/docs/config/server-options.md
index b689118..1ac68cf 100644
--- a/docs/config/server-options.md
+++ b/docs/config/server-options.md
@@ -1,24 +1,24 @@
-# Server Options
+# Options du serveur
-Unless noted, the options in this section are only applied to dev.
+Sauf mention contraire, les options de cette section ne s'appliquent qu'au développement.
## server.host
-- **Type:** `string | boolean`
-- **Default:** `'localhost'`
+- **Type :** `string | boolean`
+- **Défaut :** `'localhost'`
-Specify which IP addresses the server should listen on.
-Set this to `0.0.0.0` or `true` to listen on all addresses, including LAN and public addresses.
+Spécifie les adresses IP sur lesquelles le serveur doit écouter.
+Définissez cette option sur `0.0.0.0` ou `true` pour écouter sur toutes les adresses, y compris les réseaux locaux et les adresses publiques.
-This can be set via the CLI using `--host 0.0.0.0` or `--host`.
+Cette option peut être définie via la CLI en utilisant `--host 0.0.0.0` ou `--host`.
-::: tip NOTE
+::: tip REMARQUE
-There are cases when other servers might respond instead of Vite.
+Il existe des cas où d'autres serveurs pourraient répondre à la place de Vite.
-The first case is when `localhost` is used. Node.js under v17 reorders the result of DNS-resolved addresses by default. When accessing `localhost`, browsers use DNS to resolve the address and that address might differ from the address which Vite is listening to. Vite prints the resolved address when it differs.
+Le premier cas est lorsque `localhost` est utilisé. Node.js avant la v17 réorganise par défaut le résultat des adresses résolues par DNS. Lorsque vous accédez à `localhost`, les navigateurs utilisent DNS pour résoudre l'adresse et cette adresse peut différer de celle sur laquelle Vite écoute. Vite affiche l'adresse résolue lorsqu'elle diffère.
-You can set [`dns.setDefaultResultOrder('verbatim')`](https://nodejs.org/api/dns.html#dns_dns_setdefaultresultorder_order) to disable the reordering behavior. Vite will then print the address as `localhost`.
+Vous pouvez définir [`dns.setDefaultResultOrder('verbatim')`](https://nodejs.org/api/dns.html#dns_dns_setdefaultresultorder_order) pour désactiver le comportement de réorganisation. Vite affichera alors l'adresse comme `localhost`.
```js twoslash [vite.config.js]
import { defineConfig } from 'vite'
@@ -31,80 +31,80 @@ export default defineConfig({
})
```
-The second case is when wildcard hosts (e.g. `0.0.0.0`) are used. This is because servers listening on non-wildcard hosts take priority over those listening on wildcard hosts.
+Le deuxième cas est lorsque des hôtes génériques (par ex. `0.0.0.0`) sont utilisés. C'est parce que les serveurs écoutant sur des hôtes non génériques ont priorité sur ceux écoutant sur des hôtes génériques.
:::
-::: tip Accessing the server on WSL2 from your LAN
+::: tip Accéder au serveur sur WSL2 depuis votre réseau local
-When running Vite on WSL2, it is not sufficient to set `host: true` to access the server from your LAN.
-See [the WSL document](https://learn.microsoft.com/en-us/windows/wsl/networking#accessing-a-wsl-2-distribution-from-your-local-area-network-lan) for more details.
+Lorsque vous exécutez Vite sur WSL2, il ne suffit pas de définir `host: true` pour accéder au serveur depuis votre réseau local.
+Consultez [le document WSL](https://learn.microsoft.com/en-us/windows/wsl/networking#accessing-a-wsl-2-distribution-from-your-local-area-network-lan) pour plus de détails.
:::
## server.allowedHosts
-- **Type:** `string[] | true`
-- **Default:** `[]`
+- **Type :** `string[] | true`
+- **Défaut :** `[]`
-The hostnames that Vite is allowed to respond to.
-`localhost` and domains under `.localhost` and all IP addresses are allowed by default.
-When using HTTPS, this check is skipped.
+Les noms d'hôtes auxquels Vite est autorisé à répondre.
+`localhost` et les domaines sous `.localhost` ainsi que toutes les adresses IP sont autorisés par défaut.
+Lorsque vous utilisez HTTPS, cette vérification est ignorée.
-If a string starts with `.`, it will allow that hostname without the `.` and all subdomains under the hostname. For example, `.example.com` will allow `example.com`, `foo.example.com`, and `foo.bar.example.com`. If set to `true`, the server is allowed to respond to requests for any hosts.
+Si une chaîne commence par `.`, elle autorisera ce nom d'hôte sans le `.` et tous les sous-domaines sous ce nom d'hôte. Par exemple, `.example.com` autorisera `example.com`, `foo.example.com` et `foo.bar.example.com`. Si défini à `true`, le serveur est autorisé à répondre aux requêtes pour n'importe quel hôte.
-::: details What hosts are safe to be added?
+::: details Quels hôtes est-il sûr d'ajouter ?
-Hosts that you have control over which IP addresses they resolve to are safe to add to the list of allowed hosts.
+Les hôtes dont vous contrôlez les adresses IP sont sûrs à ajouter à la liste des hôtes autorisés.
-For example, if you own a domain `vite.dev`, you can add `vite.dev` and `.vite.dev` to the list. If you don't own that domain and you cannot trust the owner of that domain, you should not add it.
+Par exemple, si vous possédez un domaine `vite.dev`, vous pouvez ajouter `vite.dev` et `.vite.dev` à la liste. Si vous ne possédez pas ce domaine et que vous ne pouvez pas faire confiance au propriétaire de ce domaine, vous ne devriez pas l'ajouter.
-Especially, you should never add Top-Level Domains like `.com` to the list. This is because anyone can purchase a domain like `example.com` and control the IP address it resolves to.
+En particulier, vous ne devriez jamais ajouter des domaines de premier niveau comme `.com` à la liste. C'est parce que n'importe qui peut acheter un domaine comme `example.com` et contrôler l'adresse IP à laquelle il résout.
:::
::: danger
-Setting `server.allowedHosts` to `true` allows any website to send requests to your dev server through DNS rebinding attacks, allowing them to download your source code and content. We recommend always using an explicit list of allowed hosts. See [GHSA-vg6x-rcgg-rjx6](https://github.com/vitejs/vite/security/advisories/GHSA-vg6x-rcgg-rjx6) for more details.
+Définir `server.allowedHosts` à `true` permet à n'importe quel site web d'envoyer des requêtes à votre serveur de développement grâce à des attaques de rebinding DNS, leur permettant de télécharger votre code source et votre contenu. Nous recommandons toujours d'utiliser une liste explicite d'hôtes autorisés. Voir [GHSA-vg6x-rcgg-rjx6](https://github.com/vitejs/vite/security/advisories/GHSA-vg6x-rcgg-rjx6) pour plus de détails.
:::
-::: details Configure via environment variable
-You can set the environment variable `__VITE_ADDITIONAL_SERVER_ALLOWED_HOSTS` to add an additional allowed host.
+::: details Configurer via une variable d'environnement
+Vous pouvez définir la variable d'environnement `__VITE_ADDITIONAL_SERVER_ALLOWED_HOSTS` pour ajouter un hôte autorisé supplémentaire.
:::
## server.port
-- **Type:** `number`
-- **Default:** `5173`
+- **Type :** `number`
+- **Défaut :** `5173`
-Specify server port. Note if the port is already being used, Vite will automatically try the next available port so this may not be the actual port the server ends up listening on.
+Spécifie le port du serveur. Notez que si le port est déjà utilisé, Vite essaiera automatiquement le prochain port disponible, donc ce ne sera peut-être pas le port réel sur lequel le serveur finira par écouter.
## server.strictPort
-- **Type:** `boolean`
+- **Type :** `boolean`
-Set to `true` to exit if port is already in use, instead of automatically trying the next available port.
+Définissez sur `true` pour quitter si le port est déjà utilisé, au lieu d'essayer automatiquement le prochain port disponible.
## server.https
-- **Type:** `https.ServerOptions`
+- **Type :** `https.ServerOptions`
-Enable TLS + HTTP/2. The value is an [options object](https://nodejs.org/api/https.html#https_https_createserver_options_requestlistener) passed to `https.createServer()`.
+Active TLS + HTTP/2. La valeur est un [objet d'options](https://nodejs.org/api/https.html#https_https_createserver_options_requestlistener) passé à `https.createServer()`.
-Note that this downgrades to TLS only when the [`server.proxy` option](#server-proxy) is also used.
+Notez que cela est rétrogradé à TLS uniquement lorsque l'[option `server.proxy`](#server-proxy) est également utilisée.
-A valid certificate is needed. For a basic setup, you can add [@vitejs/plugin-basic-ssl](https://github.com/vitejs/vite-plugin-basic-ssl) to the project plugins, which will automatically create and cache a self-signed certificate. But we recommend creating your own certificates.
+Un certificat valide est nécessaire. Pour une configuration de base, vous pouvez ajouter [@vitejs/plugin-basic-ssl](https://github.com/vitejs/vite-plugin-basic-ssl) aux plugins du projet, qui créera et mettra en cache automatiquement un certificat auto-signé. Mais nous vous recommandons de créer vos propres certificats.
## server.open
-- **Type:** `boolean | string`
+- **Type :** `boolean | string`
-Automatically open the app in the browser on server start. When the value is a string, it will be used as the URL's pathname. If you want to open the server in a specific browser you like, you can set the env `process.env.BROWSER` (e.g. `firefox`). You can also set `process.env.BROWSER_ARGS` to pass additional arguments (e.g. `--incognito`).
+Ouvre automatiquement l'application dans le navigateur au démarrage du serveur. Lorsque la valeur est une chaîne, elle sera utilisée comme chemin de l'URL. Si vous souhaitez ouvrir le serveur dans un navigateur spécifique, vous pouvez définir la variable d'environnement `process.env.BROWSER` (par exemple `firefox`). Vous pouvez également définir `process.env.BROWSER_ARGS` pour passer des arguments supplémentaires (par exemple `--incognito`).
-`BROWSER` and `BROWSER_ARGS` are also special environment variables you can set in the `.env` file to configure it. See [the `open` package](https://github.com/sindresorhus/open#app) for more details.
+`BROWSER` et `BROWSER_ARGS` sont également des variables d'environnement spéciales que vous pouvez définir dans le fichier `.env` pour les configurer. Consultez [le package `open`](https://github.com/sindresorhus/open#app) pour plus de détails.
-**Example:**
+**Exemple :**
```js
export default defineConfig({
@@ -116,27 +116,27 @@ export default defineConfig({
## server.proxy
-- **Type:** `Record`
+- **Type :** `Record`
-Configure custom proxy rules for the dev server. Expects an object of `{ key: options }` pairs. Any requests that request path starts with that key will be proxied to that specified target. If the key starts with `^`, it will be interpreted as a `RegExp`. The `configure` option can be used to access the proxy instance. If a request matches any of the configured proxy rules, the request won't be transformed by Vite.
+Configure des règles de proxy personnalisées pour le serveur de développement. Attend un objet de paires `{ clef: options }`. Toutes les requêtes dont le chemin commence par cette clef seront redirigées vers la cible spécifiée. Si la clef commence par `^`, elle sera interprétée comme une `RegExp`. L'option `configure` peut être utilisée pour accéder à l'instance de proxy. Si une requête correspond à l'une des règles de proxy configurées, la requête ne sera pas transformée par Vite.
-Note that if you are using non-relative [`base`](/config/shared-options.md#base), you must prefix each key with that `base`.
+Notez que si vous utilisez une [`base`](/config/shared-options.md#base) non relative, vous devez préfixer chaque clef avec cette `base`.
-Extends [`http-proxy`](https://github.com/http-party/node-http-proxy#options). Additional options are [here](https://github.com/vitejs/vite/blob/main/packages/vite/src/node/server/middlewares/proxy.ts#L13).
+Étend [`http-proxy`](https://github.com/http-party/node-http-proxy#options). Options supplémentaires [ici](https://github.com/vitejs/vite/blob/main/packages/vite/src/node/server/middlewares/proxy.ts#L13).
-In some cases, you might also want to configure the underlying dev server (e.g. to add custom middlewares to the internal [connect](https://github.com/senchalabs/connect) app). In order to do that, you need to write your own [plugin](/guide/using-plugins.html) and use [configureServer](/guide/api-plugin.html#configureserver) function.
+Dans certains cas, vous pourriez également vouloir configurer le serveur de développement sous-jacent (par exemple pour ajouter des middlewares personnalisés à l'application interne [connect](https://github.com/senchalabs/connect)). Pour ce faire, vous devez écrire votre propre [plugin](/guide/using-plugins.html) et utiliser la fonction [configureServer](/guide/api-plugin.html#configureserver).
-**Example:**
+**Exemple :**
```js
export default defineConfig({
server: {
proxy: {
- // string shorthand:
+ // raccourci de chaine de caractère :
// http://localhost:5173/foo
// -> http://localhost:4567/foo
'/foo': 'http://localhost:4567',
- // with options:
+ // avec options :
// http://localhost:5173/api/bar
// -> http://jsonplaceholder.typicode.com/bar
'/api': {
@@ -144,7 +144,7 @@ export default defineConfig({
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, ''),
},
- // with RegExp:
+ // avec RegExp :
// http://localhost:5173/fallback/
// -> http://jsonplaceholder.typicode.com/
'^/fallback/.*': {
@@ -152,19 +152,19 @@ export default defineConfig({
changeOrigin: true,
rewrite: (path) => path.replace(/^\/fallback/, ''),
},
- // Using the proxy instance
+ // Utilisation de l'instance de proxy
'/api': {
target: 'http://jsonplaceholder.typicode.com',
changeOrigin: true,
configure: (proxy, options) => {
- // proxy will be an instance of 'http-proxy'
+ // proxy sera une instance de 'http-proxy'
},
},
- // Proxying websockets or socket.io:
+ // Proxy de websockets ou socket.io :
// ws://localhost:5173/socket.io
// -> ws://localhost:5174/socket.io
- // Exercise caution using `rewriteWsOrigin` as it can leave the
- // proxying open to CSRF attacks.
+ // Soyez prudent avec `rewriteWsOrigin` car cela peut laisser
+ // le proxy ouvert aux attaques CSRF.
'/socket.io': {
target: 'ws://localhost:5174',
ws: true,
@@ -177,65 +177,65 @@ export default defineConfig({
## server.cors
-- **Type:** `boolean | CorsOptions`
-- **Default:** `{ origin: /^https?:\/\/(?:(?:[^:]+\.)?localhost|127\.0\.0\.1|\[::1\])(?::\d+)?$/ }` (allows localhost, `127.0.0.1` and `::1`)
+- **Type :** `boolean | CorsOptions`
+- **Défaut :** `{ origin: /^https?:\/\/(?:(?:[^:]+\.)?localhost|127\.0\.0\.1|\[::1\])(?::\d+)?$/ }` (autorise localhost, `127.0.0.1` et `::1`)
-Configure CORS for the dev server. Pass an [options object](https://github.com/expressjs/cors#configuration-options) to fine tune the behavior or `true` to allow any origin.
+Configure les CORS pour le serveur de développement. Passez un [objet d'options](https://github.com/expressjs/cors#configuration-options) pour affiner le comportement ou `true` pour autoriser n'importe quelle origine.
::: danger
-Setting `server.cors` to `true` allows any website to send requests to your dev server and download your source code and content. We recommend always using an explicit list of allowed origins.
+Définir `server.cors` à `true` permet à n'importe quel site web d'envoyer des requêtes à votre serveur de développement et de télécharger votre code source et votre contenu. Nous recommandons toujours d'utiliser une liste explicite d'origines autorisées.
:::
## server.headers
-- **Type:** `OutgoingHttpHeaders`
+- **Type :** `OutgoingHttpHeaders`
-Specify server response headers.
+Spécifie les en-têtes de réponse du serveur.
## server.hmr
-- **Type:** `boolean | { protocol?: string, host?: string, port?: number, path?: string, timeout?: number, overlay?: boolean, clientPort?: number, server?: Server }`
+- **Type :** `boolean | { protocol?: string, host?: string, port?: number, path?: string, timeout?: number, overlay?: boolean, clientPort?: number, server?: Server }`
-Disable or configure HMR connection (in cases where the HMR websocket must use a different address from the http server).
+Désactive ou configure la connexion HMR (dans les cas où le websocket HMR doit utiliser une adresse différente du serveur HTTP).
-Set `server.hmr.overlay` to `false` to disable the server error overlay.
+Définissez `server.hmr.overlay` à `false` pour désactiver l'overlay d'erreur du serveur.
-`protocol` sets the WebSocket protocol used for the HMR connection: `ws` (WebSocket) or `wss` (WebSocket Secure).
+`protocol` définit le protocole WebSocket utilisé pour la connexion HMR : `ws` (WebSocket) ou `wss` (WebSocket Secure).
-`clientPort` is an advanced option that overrides the port only on the client side, allowing you to serve the websocket on a different port than the client code looks for it on.
+`clientPort` est une option avancée qui remplace le port uniquement côté client, vous permettant de servir le websocket sur un port différent de celui que le code client recherche.
-When `server.hmr.server` is defined, Vite will process the HMR connection requests through the provided server. If not in middleware mode, Vite will attempt to process HMR connection requests through the existing server. This can be helpful when using self-signed certificates or when you want to expose Vite over a network on a single port.
+Lorsque `server.hmr.server` est défini, Vite traitera les requêtes de connexion HMR via le serveur fourni. Si ce n'est pas en mode middleware, Vite tentera de traiter les requêtes de connexion HMR via le serveur existant. Cela peut être utile lorsque vous utilisez des certificats auto-signés ou lorsque vous souhaitez exposer Vite sur un réseau via un seul port.
-Check out [`vite-setup-catalogue`](https://github.com/sapphi-red/vite-setup-catalogue) for some examples.
+Consultez [`vite-setup-catalogue`](https://github.com/sapphi-red/vite-setup-catalogue) pour quelques exemples.
-::: tip NOTE
+::: tip REMARQUE
-With the default configuration, reverse proxies in front of Vite are expected to support proxying WebSocket. If the Vite HMR client fails to connect WebSocket, the client will fall back to connecting the WebSocket directly to the Vite HMR server bypassing the reverse proxies:
+Avec la configuration par défaut, on s'attend à ce que les reverse proxys devant Vite prennent en charge le proxy WebSocket. Si le client HMR de Vite ne parvient pas à se connecter en WebSocket, le client retombera sur une connexion WebSocket directe au serveur HMR de Vite, contournant les reverse proxys :
```
-Direct websocket connection fallback. Check out https://vite.dev/config/server-options.html#server-hmr to remove the previous connection error.
+Fallback de connexion websocket directe. Consultez https://fr.vite.dev/config/server-options.html#server-hmr pour supprimer l'erreur de connexion précédente.
```
-The error that appears in the Browser when the fallback happens can be ignored. To avoid the error by directly bypassing reverse proxies, you could either:
+L'erreur qui apparaît dans le navigateur lorsque le fallback se produit peut être ignorée. Pour éviter l'erreur en contournant directement les reverse proxys, vous pouvez soit :
-- configure the reverse proxy to proxy WebSocket too
-- set [`server.strictPort = true`](#server-strictport) and set `server.hmr.clientPort` to the same value with `server.port`
-- set `server.hmr.port` to a different value from [`server.port`](#server-port)
+- configurer le reverse proxy pour qu'il proxifie également WebSocket
+- définir [`server.strictPort = true`](#server-strictport) et définir `server.hmr.clientPort` à la même valeur que `server.port`
+- définir `server.hmr.port` à une valeur différente de [`server.port`](#server-port)
:::
## server.warmup
-- **Type:** `{ clientFiles?: string[], ssrFiles?: string[] }`
-- **Related:** [Warm Up Frequently Used Files](/guide/performance.html#warm-up-frequently-used-files)
+- **Type :** `{ clientFiles?: string[], ssrFiles?: string[] }`
+- **Connexe :** [Préchauffer les fichiers fréquemment utilisés](/guide/performance.html#warm-up-frequently-used-files)
-Warm up files to transform and cache the results in advance. This improves the initial page load during server starts and prevents transform waterfalls.
+Préchauffe les fichiers pour transformer et mettre en cache les résultats à l'avance. Cela améliore le chargement initial de la page pendant les démarrages du serveur et empêche les cascades de transformation.
-`clientFiles` are files that are used in the client only, while `ssrFiles` are files that are used in SSR only. They accept an array of file paths or [`tinyglobby`](https://github.com/SuperchupuDev/tinyglobby) patterns relative to the `root`.
+`clientFiles` sont des fichiers qui ne sont utilisés que dans le client, tandis que `ssrFiles` sont des fichiers qui ne sont utilisés que dans le SSR. Ils acceptent un tableau de chemins de fichiers ou de modèles [`tinyglobby`](https://github.com/SuperchupuDev/tinyglobby) relatifs à la `root`.
-Make sure to only add files that are frequently used to not overload the Vite dev server on startup.
+Assurez-vous de n'ajouter que les fichiers fréquemment utilisés pour ne pas surcharger le serveur de développement Vite au démarrage.
```js
export default defineConfig({
@@ -250,43 +250,43 @@ export default defineConfig({
## server.watch
-- **Type:** `object | null`
+- **Type :** `object | null`
-File system watcher options to pass on to [chokidar](https://github.com/paulmillr/chokidar/tree/3.6.0#api).
+Options de surveillance du système de fichiers à transmettre à [chokidar](https://github.com/paulmillr/chokidar/tree/3.6.0#api).
-The Vite server watcher watches the `root` and skips the `.git/`, `node_modules/`, and Vite's `cacheDir` and `build.outDir` directories by default. When updating a watched file, Vite will apply HMR and update the page only if needed.
+Le watcher du serveur Vite surveille le répertoire `root` et ignore par défaut les répertoires `.git/`, `node_modules/`, ainsi que le `cacheDir` de Vite et le `build.outDir`. Lors de la mise à jour d'un fichier surveillé, Vite appliquera le HMR et mettra à jour la page uniquement si nécessaire.
-If set to `null`, no files will be watched. `server.watcher` will provide a compatible event emitter, but calling `add` or `unwatch` will have no effect.
+Si défini à `null`, aucun fichier ne sera surveillé. `server.watcher` fournira un émetteur d'événements compatible, mais l'appel de `add` ou `unwatch` n'aura aucun effet.
-::: warning Watching files in `node_modules`
+::: warning Surveillance des fichiers dans `node_modules`
-It's currently not possible to watch files and packages in `node_modules`. For further progress and workarounds, you can follow [issue #8619](https://github.com/vitejs/vite/issues/8619).
+Il n'est actuellement pas possible de surveiller les fichiers et les packages dans `node_modules`. Pour plus de progression et de solutions de contournement, vous pouvez suivre [le ticket #8619](https://github.com/vitejs/vite/issues/8619).
:::
-::: warning Using Vite on Windows Subsystem for Linux (WSL) 2
+::: warning Utilisation de Vite sur Windows Subsystem for Linux (WSL) 2
-When running Vite on WSL2, file system watching does not work when a file is edited by Windows applications (non-WSL2 process). This is due to [a WSL2 limitation](https://github.com/microsoft/WSL/issues/4739). This also applies to running on Docker with a WSL2 backend.
+Lorsque vous exécutez Vite sur WSL2, la surveillance du système de fichiers ne fonctionne pas lorsqu'un fichier est modifié par des applications Windows (processus non-WSL2). Cela est dû à [une limitation de WSL2](https://github.com/microsoft/WSL/issues/4739). Cela s'applique également à l'exécution sur Docker avec un backend WSL2.
-To fix it, you could either:
+Pour résoudre ce problème, vous pouvez soit :
-- **Recommended**: Use WSL2 applications to edit your files.
- - It is also recommended to move the project folder outside of a Windows filesystem. Accessing Windows filesystem from WSL2 is slow. Removing that overhead will improve performance.
-- Set `{ usePolling: true }`.
- - Note that [`usePolling` leads to high CPU utilization](https://github.com/paulmillr/chokidar/tree/3.6.0#performance).
+- **Recommandé** : Utiliser des applications WSL2 pour éditer vos fichiers.
+ - Il est également recommandé de déplacer le dossier du projet en dehors d'un système de fichiers Windows. L'accès au système de fichiers Windows depuis WSL2 est lent. Supprimer cette surcharge améliorera les performances.
+- Définir `{ usePolling: true }`.
+ - Notez que [`usePolling` entraîne une utilisation élevée du CPU](https://github.com/paulmillr/chokidar/tree/3.6.0#performance).
:::
## server.middlewareMode
-- **Type:** `boolean`
-- **Default:** `false`
+- **Type :** `boolean`
+- **Défaut :** `false`
-Create Vite server in middleware mode.
+Crée le serveur Vite en mode middleware.
-- **Related:** [appType](./shared-options#apptype), [SSR - Setting Up the Dev Server](/guide/ssr#setting-up-the-dev-server)
+- **Connexe :** [appType](./shared-options#apptype), [SSR - Configuration du serveur de développement](/guide/ssr#setting-up-the-dev-server)
-- **Example:**
+- **Exemple :**
```js twoslash
import express from 'express'
@@ -295,20 +295,20 @@ import { createServer as createViteServer } from 'vite'
async function createServer() {
const app = express()
- // Create Vite server in middleware mode
+ // Crée le serveur Vite en mode middleware
const vite = await createViteServer({
server: { middlewareMode: true },
- // don't include Vite's default HTML handling middlewares
+ // n'inclut pas les middlewares de gestion HTML par défaut de Vite
appType: 'custom',
})
- // Use vite's connect instance as middleware
+ // Utilise l'instance connect de vite comme middleware
app.use(vite.middlewares)
app.use('*', async (req, res) => {
- // Since `appType` is `'custom'`, should serve response here.
- // Note: if `appType` is `'spa'` or `'mpa'`, Vite includes middlewares
- // to handle HTML requests and 404s so user middlewares should be added
- // before Vite's middlewares to take effect instead
+ // Puisque `appType` est `'custom'`, il faut servir la réponse ici.
+ // Note : si `appType` est `'spa'` ou `'mpa'`, Vite inclut des middlewares
+ // pour gérer les requêtes HTML et les 404, donc les middlewares utilisateur
+ // doivent être ajoutés avant les middlewares de Vite pour prendre effet
})
}
@@ -317,40 +317,40 @@ createServer()
## server.fs.strict
-- **Type:** `boolean`
-- **Default:** `true` (enabled by default since Vite 2.7)
+- **Type :** `boolean`
+- **Défaut :** `true` (activé par défaut depuis Vite 2.7)
-Restrict serving files outside of workspace root.
+Restreint la diffusion de fichiers en dehors de la racine de l'espace de travail.
## server.fs.allow
-- **Type:** `string[]`
+- **Type :** `string[]`
-Restrict files that could be served via `/@fs/`. When `server.fs.strict` is set to `true`, accessing files outside this directory list that aren't imported from an allowed file will result in a 403.
+Restreint les fichiers qui pourraient être servis via `/@fs/`. Lorsque `server.fs.strict` est défini à `true`, l'accès aux fichiers en dehors de cette liste de répertoires qui ne sont pas importés depuis un fichier autorisé se traduira par un 403.
-Both directories and files can be provided.
+Des répertoires et des fichiers peuvent être fournis.
-Vite will search for the root of the potential workspace and use it as default. A valid workspace met the following conditions, otherwise will fall back to the [project root](/guide/#index-html-and-project-root).
+Vite recherchera la racine de l'espace de travail potentiel et l'utilisera par défaut. Un espace de travail valide répond aux conditions suivantes, sinon il se rabattra sur la [racine du projet](/guide/#index-html-and-project-root).
-- contains `workspaces` field in `package.json`
-- contains one of the following file
+- contient le champ `workspaces` dans `package.json`
+- contient l'un des fichiers suivants
- `lerna.json`
- `pnpm-workspace.yaml`
-Accepts a path to specify the custom workspace root. Could be a absolute path or a path relative to [project root](/guide/#index-html-and-project-root). For example:
+Accepte un chemin pour spécifier la racine personnalisée de l'espace de travail. Peut être un chemin absolu ou un chemin relatif à la [racine du projet](/guide/#index-html-and-project-root). Par exemple :
```js
export default defineConfig({
server: {
fs: {
- // Allow serving files from one level up to the project root
+ // Autorise la diffusion de fichiers à partir d'un niveau au-dessus de la racine du projet
allow: ['..'],
},
},
})
```
-When `server.fs.allow` is specified, the auto workspace root detection will be disabled. To extend the original behavior, a utility `searchForWorkspaceRoot` is exposed:
+Lorsque `server.fs.allow` est spécifié, la détection automatique de la racine de l'espace de travail sera désactivée. Pour étendre le comportement original, un utilitaire `searchForWorkspaceRoot` est exposé :
```js
import { defineConfig, searchForWorkspaceRoot } from 'vite'
@@ -359,11 +359,11 @@ export default defineConfig({
server: {
fs: {
allow: [
- // search up for workspace root
+ // recherche vers le haut pour la racine de l'espace de travail
searchForWorkspaceRoot(process.cwd()),
- // your custom rules
- '/path/to/custom/allow_directory',
- '/path/to/custom/allow_file.demo',
+ // vos règles personnalisées
+ '/chemin/vers/repertoire_autorise_personnalise',
+ '/chemin/vers/fichier_autorise_personnalise.demo',
],
},
},
@@ -372,10 +372,10 @@ export default defineConfig({
## server.fs.deny
-- **Type:** `string[]`
-- **Default:** `['.env', '.env.*', '*.{crt,pem}', '**/.git/**']`
+- **Type :** `string[]`
+- **Défaut :** `['.env', '.env.*', '*.{crt,pem}', '**/.git/**']`
-Blocklist for sensitive files being restricted to be served by Vite dev server. This will have higher priority than [`server.fs.allow`](#server-fs-allow). [picomatch patterns](https://github.com/micromatch/picomatch#globbing-features) are supported.
+Liste noire des fichiers sensibles qui sont restreints pour être servis par le serveur de développement Vite. Cela aura une priorité plus élevée que [`server.fs.allow`](#server-fs-allow). Les [modèles picomatch](https://github.com/micromatch/picomatch#globbing-features) sont pris en charge.
::: tip NOTE
@@ -385,9 +385,9 @@ This blocklist does not apply to [the public directory](/guide/assets.md#the-pub
## server.origin
-- **Type:** `string`
+- **Type :** `string`
-Defines the origin of the generated asset URLs during development.
+Définit l'origine des URL d'assets générées pendant le développement.
```js
export default defineConfig({
@@ -399,20 +399,20 @@ export default defineConfig({
## server.sourcemapIgnoreList
-- **Type:** `false | (sourcePath: string, sourcemapPath: string) => boolean`
-- **Default:** `(sourcePath) => sourcePath.includes('node_modules')`
+- **Type :** `false | (sourcePath: string, sourcemapPath: string) => boolean`
+- **Défaut :** `(sourcePath) => sourcePath.includes('node_modules')`
-Whether or not to ignore source files in the server sourcemap, used to populate the [`x_google_ignoreList` source map extension](https://developer.chrome.com/articles/x-google-ignore-list/).
+Indique s'il faut ignorer les fichiers source dans la sourcemap du serveur, utilisée pour remplir l'[extension de sourcemap `x_google_ignoreList`](https://developer.chrome.com/articles/x-google-ignore-list/).
-`server.sourcemapIgnoreList` is the equivalent of [`build.rollupOptions.output.sourcemapIgnoreList`](https://rollupjs.org/configuration-options/#output-sourcemapignorelist) for the dev server. A difference between the two config options is that the rollup function is called with a relative path for `sourcePath` while `server.sourcemapIgnoreList` is called with an absolute path. During dev, most modules have the map and the source in the same folder, so the relative path for `sourcePath` is the file name itself. In these cases, absolute paths makes it convenient to be used instead.
+`server.sourcemapIgnoreList` est l'équivalent de [`build.rollupOptions.output.sourcemapIgnoreList`](https://rollupjs.org/configuration-options/#output-sourcemapignorelist) pour le serveur de développement. Une différence entre les deux options de configuration est que la fonction rollup est appelée avec un chemin relatif pour `sourcePath` tandis que `server.sourcemapIgnoreList` est appelée avec un chemin absolu. Pendant le développement, la plupart des modules ont la carte et la source dans le même dossier, donc le chemin relatif pour `sourcePath` est le nom du fichier lui-même. Dans ces cas, les chemins absolus sont plus pratiques à utiliser.
-By default, it excludes all paths containing `node_modules`. You can pass `false` to disable this behavior, or, for full control, a function that takes the source path and sourcemap path and returns whether to ignore the source path.
+Par défaut, il exclut tous les chemins contenant `node_modules`. Vous pouvez passer `false` pour désactiver ce comportement, ou, pour un contrôle total, une fonction qui prend le chemin source et le chemin sourcemap et retourne si le chemin source doit être ignoré.
```js
export default defineConfig({
server: {
- // This is the default value, and will add all files with node_modules
- // in their paths to the ignore list.
+ // C'est la valeur par défaut, et elle ajoutera tous les fichiers avec node_modules
+ // dans leurs chemins à la liste d'ignorés.
sourcemapIgnoreList(sourcePath, sourcemapPath) {
return sourcePath.includes('node_modules')
},
@@ -421,5 +421,5 @@ export default defineConfig({
```
::: tip Note
-[`server.sourcemapIgnoreList`](#server-sourcemapignorelist) and [`build.rollupOptions.output.sourcemapIgnoreList`](https://rollupjs.org/configuration-options/#output-sourcemapignorelist) need to be set independently. `server.sourcemapIgnoreList` is a server only config and doesn't get its default value from the defined rollup options.
+[`server.sourcemapIgnoreList`](#server-sourcemapignorelist) et [`build.rollupOptions.output.sourcemapIgnoreList`](https://rollupjs.org/configuration-options/#output-sourcemapignorelist) doivent être définis indépendamment. `server.sourcemapIgnoreList` est une configuration uniquement pour le serveur et ne récupère pas sa valeur par défaut des options rollup définies.
:::
diff --git a/docs/config/shared-options.md b/docs/config/shared-options.md
index 592818c..e04795f 100644
--- a/docs/config/shared-options.md
+++ b/docs/config/shared-options.md
@@ -1,15 +1,15 @@
-# Shared Options
+# Options partagées
-Unless noted, the options in this section are applied to all dev, build, and preview.
+Sauf mention contraire, les options de cette section s'appliquent à tous les dev, build et preview.
## root
- **Type:** `string`
- **Default:** `process.cwd()`
-Project root directory (where `index.html` is located). Can be an absolute path, or a path relative to the current working directory.
+Répertoire racine du projet (où `index.html` est situé). Peut être un chemin absolu, ou un chemin relatif au répertoire de travail actuel.
-See [Project Root](/guide/#index-html-and-project-root) for more details.
+Voir [Racine du projet](/guide/#index-html-and-project-root) pour plus de détails.
## base
@@ -17,30 +17,30 @@ See [Project Root](/guide/#index-html-and-project-root) for more details.
- **Default:** `/`
- **Related:** [`server.origin`](/config/server-options.md#server-origin)
-Base public path when served in development or production. Valid values include:
+Chemin public de base lorsque le serveur est mode de développement ou de production. Les valeurs valides incluent :
-- Absolute URL pathname, e.g. `/foo/`
-- Full URL, e.g. `https://bar.com/foo/` (The origin part won't be used in development so the value is the same as `/foo/`)
-- Empty string or `./` (for embedded deployment)
+- Chemin URL absolu, e.g. `/foo/`
+- URL complète, e.g. `https://bar.com/foo/` (La partie origin ne sera pas utilisée dans le développement, donc la valeur est la même que `/foo/`)
+- Chaîne vide ou `./` (pour le déploiement incorporé)
-See [Public Base Path](/guide/build#public-base-path) for more details.
+Voir [Public Base Path](/guide/build#public-base-path) pour plus de détails.
## mode
- **Type:** `string`
-- **Default:** `'development'` for serve, `'production'` for build
+- **Default:** `'development'` pour serve, `'production'` pour build
-Specifying this in config will override the default mode for **both serve and build**. This value can also be overridden via the command line `--mode` option.
+Spécifier cette option dans la configuration remplacera le mode par défaut pour **serve et build**. Cette valeur peut également être remplacée via l'option de ligne de commande `--mode`.
-See [Env Variables and Modes](/guide/env-and-mode) for more details.
+Voir [Env Variables and Modes](/guide/env-and-mode) pour plus de détails.
## define
- **Type:** `Record`
-Define global constant replacements. Entries will be defined as globals during dev and statically replaced during build.
+Définir les remplacements de constantes globales. Les entrées seront définies comme globals pendant le développement et statiquement remplacés pendant le build.
-Vite uses [esbuild defines](https://esbuild.github.io/api/#define) to perform replacements, so value expressions must be a string that contains a JSON-serializable value (null, boolean, number, string, array, or object) or a single identifier. For non-string values, Vite will automatically convert it to a string with `JSON.stringify`.
+Vite utilise [esbuild defines](https://esbuild.github.io/api/#define) pour effectuer les remplacements, donc les expressions de valeur doivent être une chaîne qui contient une valeur JSON-sérialisable (null, boolean, number, string, array, ou object) ou un identifiant unique. Pour les valeurs non-string, Vite convertira automatiquement en une chaîne avec `JSON.stringify`.
**Example:**
@@ -54,9 +54,9 @@ export default defineConfig({
```
::: tip NOTE
-For TypeScript users, make sure to add the type declarations in the `env.d.ts` or `vite-env.d.ts` file to get type checks and Intellisense.
+Pour les utilisateurs TypeScript, assurez-vous de rajouter les déclarations de type dans le fichier `env.d.ts` ou `vite-env.d.ts` pour obtenir des vérifications de type et un Intellisense.
-Example:
+Exemple:
```ts
// vite-env.d.ts
@@ -69,49 +69,49 @@ declare const __APP_VERSION__: string
- **Type:** `(Plugin | Plugin[] | Promise)[]`
-Array of plugins to use. Falsy plugins are ignored and arrays of plugins are flattened. If a promise is returned, it would be resolved before running. See [Plugin API](/guide/api-plugin) for more details on Vite plugins.
+Tableau de plugins à utiliser. Les plugins non valides sont ignorés et les tableaux de plugins sont aplatis. Si une promesse est renvoyée, elle sera résolue avant d'exécuter. Voir [API Plugin](/guide/api-plugin) pour plus de détails sur les plugins Vite.
## publicDir
- **Type:** `string | false`
- **Default:** `"public"`
-Directory to serve as plain static assets. Files in this directory are served at `/` during dev and copied to the root of `outDir` during build, and are always served or copied as-is without transform. The value can be either an absolute file system path or a path relative to project root.
+Répertoire à servir en tant que ressources statiques pures. Les fichiers dans ce répertoire sont servis à `/` pendant le développement et copiés dans le répertoire racine de `outDir` pendant le build, et sont toujours servis ou copiés tel quel sans transformation. La valeur peut être un chemin absolu du système de fichiers ou un chemin relatif au répertoire racine du projet.
-Defining `publicDir` as `false` disables this feature.
+Définir `publicDir` comme `false` désactive cette fonctionnalité.
-See [The `public` Directory](/guide/assets#the-public-directory) for more details.
+Voir [Le répertoire `public`](/guide/assets#the-public-directory) pour plus de détails.
## cacheDir
- **Type:** `string`
- **Default:** `"node_modules/.vite"`
-Directory to save cache files. Files in this directory are pre-bundled deps or some other cache files generated by vite, which can improve the performance. You can use `--force` flag or manually delete the directory to regenerate the cache files. The value can be either an absolute file system path or a path relative to project root. Default to `.vite` when no package.json is detected.
+Répertoire où enregistrer les fichiers de cache. Les fichiers dans ce répertoire sont des dépendances pré-bundlées ou d'autres fichiers de cache générés par Vite, ce qui peut améliorer les performances. Vous pouvez utiliser l'argument `--force` ou supprimer manuellement le répertoire pour régénérer les fichiers de cache. La valeur peut être un chemin absolu du système de fichiers ou un chemin relatif au répertoire racine du projet. Par défaut à `.vite` lorsque aucun `package.json` n'est détecté.
## resolve.alias
- **Type:**
`Record | Array<{ find: string | RegExp, replacement: string, customResolver?: ResolverFunction | ResolverObject }>`
-Will be passed to `@rollup/plugin-alias` as its [entries option](https://github.com/rollup/plugins/tree/master/packages/alias#entries). Can either be an object, or an array of `{ find, replacement, customResolver }` pairs.
+Sera passé à l'option `entries` de `@rollup/plugin-alias`. Peut être un objet ou un tableau de paires `{ find, replacement, customResolver }`.
-When aliasing to file system paths, always use absolute paths. Relative alias values will be used as-is and will not be resolved into file system paths.
+Lors de l'aliasisation vers des chemins de système de fichiers, utilisez toujours des chemins absolus. Les alias relatifs seront utilisés tels quels et ne seront pas résolus en chemins de système de fichiers.
-More advanced custom resolution can be achieved through [plugins](/guide/api-plugin).
+Des résolutions plus avancées peuvent être obtenues via [plugins](/guide/api-plugin).
-::: warning Using with SSR
-If you have configured aliases for [SSR externalized dependencies](/guide/ssr.md#ssr-externals), you may want to alias the actual `node_modules` packages. Both [Yarn](https://classic.yarnpkg.com/en/docs/cli/add/#toc-yarn-add-alias) and [pnpm](https://pnpm.io/aliases/) support aliasing via the `npm:` prefix.
+::: warning Utilisation avec SSR
+Si vous avez configuré des alias pour [dépendances externalisées SSR](/guide/ssr.md#ssr-externals), vous souhaiterez peut-être aliaser les packages `node_modules` réels. Les alias sont supportés via le préfixe `npm:` pour [Yarn](https://classic.yarnpkg.com/en/docs/cli/add/#toc-yarn-add-alias) et [pnpm](https://pnpm.io/aliases/).
:::
## resolve.dedupe
- **Type:** `string[]`
-If you have duplicated copies of the same dependency in your app (likely due to hoisting or linked packages in monorepos), use this option to force Vite to always resolve listed dependencies to the same copy (from project root).
+Si vous avez des copies en double de la même dépendance dans votre application (probablement due à l'hoisting ou aux packages liés dans des monorepos), utilisez cette option pour forcer Vite à résoudre toujours les dépendances listées vers la même copie (depuis le répertoire racine du projet).
:::warning SSR + ESM
-For SSR builds, deduplication does not work for ESM build outputs configured from `build.rollupOptions.output`. A workaround is to use CJS build outputs until ESM has better plugin support for module loading.
+Pour les builds SSR, la déduplication ne fonctionne pas pour les sorties de build ESM configurées à partir de `build.rollupOptions.output`. Une solution de contournement est d'utiliser les sorties de build CJS jusqu'à ce que ESM ait de meilleures fonctionnalités de plugin pour le chargement des modules.
:::
## resolve.conditions
@@ -119,9 +119,9 @@ For SSR builds, deduplication does not work for ESM build outputs configured fro
- **Type:** `string[]`
- **Default:** `['module', 'browser', 'development|production']` (`defaultClientConditions`)
-Additional allowed conditions when resolving [Conditional Exports](https://nodejs.org/api/packages.html#packages_conditional_exports) from a package.
+Conditions supplémentaires autorisées lors de la résolution de [Conditional Exports](https://nodejs.org/api/packages.html#packages_conditional_exports) d'un package.
-A package with conditional exports may have the following `exports` field in its `package.json`:
+Un package avec des exports conditionnels peut avoir le champ `exports` suivant dans son `package.json`:
```json
{
@@ -134,42 +134,42 @@ A package with conditional exports may have the following `exports` field in its
}
```
-Here, `import` and `require` are "conditions". Conditions can be nested and should be specified from most specific to least specific.
+Ici, `import` et `require` sont des "conditions". Les conditions peuvent être imbriquées et doivent être spécifiées de la plus spécifique à la moins spécifique.
-`development|production` is a special value that is replaced with `production` or `development` depending on the value of `process.env.NODE_ENV`. It is replaced with `production` when `process.env.NODE_ENV === 'production'` and `development` otherwise.
+`development|production` est une valeur spéciale qui est remplacée par `production` ou `development` en fonction de la valeur de `process.env.NODE_ENV`. Elle est remplacée par `production` lorsque `process.env.NODE_ENV === 'production'` et par `development` dans les autres cas.
-Note that `import`, `require`, `default` conditions are always applied if the requirements are met.
+Note que les conditions `import`, `require`, `default` sont toujours appliquées si les conditions sont remplies.
## resolve.mainFields
- **Type:** `string[]`
- **Default:** `['browser', 'module', 'jsnext:main', 'jsnext']` (`defaultClientMainFields`)
-List of fields in `package.json` to try when resolving a package's entry point. Note this takes lower precedence than conditional exports resolved from the `exports` field: if an entry point is successfully resolved from `exports`, the main field will be ignored.
+Liste des champs dans `package.json` à essayer lors de la résolution du point d'entrée d'un package. Notez que cela prend une priorité inférieure aux exports conditionnels résolus à partir du champ `exports` : si un point d'entrée est résolu avec succès à partir de `exports`, le champ principal sera ignoré.
## resolve.extensions
- **Type:** `string[]`
- **Default:** `['.mjs', '.js', '.mts', '.ts', '.jsx', '.tsx', '.json']`
-List of file extensions to try for imports that omit extensions. Note it is **NOT** recommended to omit extensions for custom import types (e.g. `.vue`) since it can interfere with IDE and type support.
+Liste des extensions de fichiers à essayer pour les imports qui omettent les extensions. Notez que cela n'est **PAS** recommandé pour les types d'importation personnalisés (e.g. `.vue`) puisqu'il peut interférer avec le support IDE et le type.
## resolve.preserveSymlinks
- **Type:** `boolean`
- **Default:** `false`
-Enabling this setting causes vite to determine file identity by the original file path (i.e. the path without following symlinks) instead of the real file path (i.e. the path after following symlinks).
+Lorsque cette option est activée, Vite détermine l'identité du fichier par le chemin du fichier original (i.e. le chemin sans suivre les liens symboliques) plutôt que le chemin du fichier réel (i.e. le chemin après suivi des liens symboliques).
-- **Related:** [esbuild#preserve-symlinks](https://esbuild.github.io/api/#preserve-symlinks), [webpack#resolve.symlinks
+- **Lié:** [esbuild#preserve-symlinks](https://esbuild.github.io/api/#preserve-symlinks), [webpack#resolve.symlinks
](https://webpack.js.org/configuration/resolve/#resolvesymlinks)
## html.cspNonce
- **Type:** `string`
-- **Related:** [Content Security Policy (CSP)](/guide/features#content-security-policy-csp)
+- **Lié:** [Content Security Policy (CSP)](/guide/features#content-security-policy-csp)
-A nonce value placeholder that will be used when generating script / style tags. Setting this value will also generate a meta tag with nonce value.
+Une valeur de nonce à placer lors de la génération de balises de script / style. Définir cette valeur générera également une balise meta avec la valeur de nonce.
## css.modules
@@ -204,36 +204,36 @@ A nonce value placeholder that will be used when generating script / style tags.
}
```
-Configure CSS modules behavior. The options are passed on to [postcss-modules](https://github.com/css-modules/postcss-modules).
+Configure le comportement des modules CSS. Les options sont passées à [postcss-modules](https://github.com/css-modules/postcss-modules).
-This option doesn't have any effect when using [Lightning CSS](../guide/features.md#lightning-css). If enabled, [`css.lightningcss.cssModules`](https://lightningcss.dev/css-modules.html) should be used instead.
+Cette option n'a aucun effet lors de l'utilisation de [Lightning CSS](../guide/features.md#lightning-css). Si activé, [`css.lightningcss.cssModules`](https://lightningcss.dev/css-modules.html) doit être utilisé à la place.
## css.postcss
- **Type:** `string | (postcss.ProcessOptions & { plugins?: postcss.AcceptedPlugin[] })`
-Inline PostCSS config or a custom directory to search PostCSS config from (default is project root).
+Configuration PostCSS en inline ou un répertoire personnalisé pour rechercher la configuration PostCSS (par défaut est le répertoire racine du projet).
-For inline PostCSS config, it expects the same format as `postcss.config.js`. But for `plugins` property, only [array format](https://github.com/postcss/postcss-load-config/blob/main/README.md#array) can be used.
+Pour la configuration PostCSS inline, il attend le même format que `postcss.config.js`. Mais pour la propriété `plugins`, seul le [format de tableau](https://github.com/postcss/postcss-load-config/blob/main/README.md#array) peut être utilisé.
-The search is done using [postcss-load-config](https://github.com/postcss/postcss-load-config) and only the supported config file names are loaded. Config files outside the workspace root (or the [project root](/guide/#index-html-and-project-root) if no workspace is found) are not searched by default. You can specify a custom path outside of the root to load the specific config file instead if needed.
+La recherche est faite en utilisant [postcss-load-config](https://github.com/postcss/postcss-load-config) et seuls les noms de fichiers de configuration pris en charge sont chargés. Les fichiers de configuration en dehors du répertoire racine du projet (ou du [répertoire racine du projet](/guide/#index-html-and-project-root) si aucun espace de travail n'est trouvé) ne sont pas recherchés par défaut. Vous pouvez spécifier un chemin personnalisé en dehors de la racine pour charger le fichier de configuration spécifique si nécessaire.
-Note if an inline config is provided, Vite will not search for other PostCSS config sources.
+Notez que si une configuration inline est fournie, Vite ne recherchera pas d'autres sources de configuration PostCSS.
## css.preprocessorOptions
- **Type:** `Record`
-Specify options to pass to CSS pre-processors. The file extensions are used as keys for the options. The supported options for each preprocessor can be found in their respective documentation:
+Spécifie les options à passer aux préprocesseurs CSS. Les extensions de fichiers sont utilisées comme clefs pour les options. Les options prises en charge pour chaque préprocesseur peuvent être trouvées dans leur documentation respective :
-- `sass`/`scss`:
- - Select the sass API to use with `api: "modern-compiler" | "modern" | "legacy"` (default `"modern-compiler"` if `sass-embedded` is installed, otherwise `"modern"`). For the best performance, it's recommended to use `api: "modern-compiler"` with the `sass-embedded` package. The `"legacy"` API is deprecated and will be removed in Vite 7.
+- `sass`/`scss` :
+ - Sélectionnez l'API sass à utiliser avec l'`api: "modern-compiler" | "modern" | "legacy"` (par défaut `"modern-compiler"` si `sass-embedded` est installé, sinon `"modern"`). Pour de meilleures performances, il est recommandé d'utiliser `api: "modern-compiler"` avec le package `sass-embedded`. L'API `"legacy"` est dépréciée et sera supprimée dans Vite 7.
- [Options (modern)](https://sass-lang.com/documentation/js-api/interfaces/stringoptions/)
- [Options (legacy)](https://sass-lang.com/documentation/js-api/interfaces/LegacyStringOptions).
-- `less`: [Options](https://lesscss.org/usage/#less-options).
-- `styl`/`stylus`: Only [`define`](https://stylus-lang.com/docs/js.html#define-name-node) is supported, which can be passed as an object.
+- `less` : [Options](https://lesscss.org/usage/#less-options).
+- `styl`/`stylus` : Seul [`define`](https://stylus-lang.com/docs/js.html#define-name-node) est pris en charge, qui peut être passé comme un objet.
-**Example:**
+**Exemple :**
```js
export default defineConfig({
@@ -248,7 +248,7 @@ export default defineConfig({
},
},
scss: {
- api: 'modern-compiler', // or "modern", "legacy"
+ api: 'modern-compiler', // ou "modern", "legacy"
importers: [
// ...
],
@@ -262,9 +262,9 @@ export default defineConfig({
- **Type:** `string | ((source: string, filename: string) => (string | { content: string; map?: SourceMap }))`
-This option can be used to inject extra code for each style content. Note that if you include actual styles and not just variables, those styles will be duplicated in the final bundle.
+Cette option peut être utilisée pour injecter du code supplémentaire pour chaque contenu de style. Notez que si vous incluez des styles et pas seulement des variables, ces styles seront dupliqués dans le bundle final.
-**Example:**
+**Exemple :**
```js
export default defineConfig({
@@ -280,36 +280,36 @@ export default defineConfig({
## css.preprocessorMaxWorkers
-- **Experimental:** [Give Feedback](https://github.com/vitejs/vite/discussions/15835)
-- **Type:** `number | true`
-- **Default:** `0` (does not create any workers and run in the main thread)
+- **Expérimental :** [Donner un avis](https://github.com/vitejs/vite/discussions/15835)
+- **Type :** `number | true`
+- **Default :** `0` (ne crée pas de workers et s'exécute dans le thread principal)
-If this option is set, CSS preprocessors will run in workers when possible. `true` means the number of CPUs minus 1.
+Si cette option est définie, les préprocesseurs CSS s'exécuteront dans des workers lorsque c'est possible. `true` signifie "nombre de CPU moins 1".
## css.devSourcemap
-- **Experimental:** [Give Feedback](https://github.com/vitejs/vite/discussions/13845)
-- **Type:** `boolean`
-- **Default:** `false`
+- **Expérimental :** [Donner un avis](https://github.com/vitejs/vite/discussions/13845)
+- **Type :** `boolean`
+- **Default :** `false`
-Whether to enable sourcemaps during dev.
+Pour activer les sourcemaps en développement.
## css.transformer
-- **Experimental:** [Give Feedback](https://github.com/vitejs/vite/discussions/13835)
-- **Type:** `'postcss' | 'lightningcss'`
-- **Default:** `'postcss'`
+- **Expérimental :** [Donner un avis](https://github.com/vitejs/vite/discussions/13835)
+- **Type :** `'postcss' | 'lightningcss'`
+- **Default :** `'postcss'`
-Selects the engine used for CSS processing. Check out [Lightning CSS](../guide/features.md#lightning-css) for more information.
+Sélectionne le moteur utilisé pour le traitement CSS. Consultez [Lightning CSS](../guide/features.md#lightning-css) pour plus d'informations.
-::: info Duplicate `@import`s
-Note that postcss (postcss-import) has a different behavior with duplicated `@import` from browsers. See [postcss/postcss-import#462](https://github.com/postcss/postcss-import/issues/462).
+::: info `@import` en double
+Notez que postcss (postcss-import) a un comportement différent avec les `@import` dupliqués par rapport aux navigateurs. Voir [postcss/postcss-import#462](https://github.com/postcss/postcss-import/issues/462).
:::
## css.lightningcss
-- **Experimental:** [Give Feedback](https://github.com/vitejs/vite/discussions/13835)
-- **Type:**
+- **Expérimental :** [Donner un avis](https://github.com/vitejs/vite/discussions/13835)
+- **Type :**
```js
import type {
@@ -336,29 +336,29 @@ import type {
}
```
-Configures Lightning CSS. Full transform options can be found in [the Lightning CSS repo](https://github.com/parcel-bundler/lightningcss/blob/master/node/index.d.ts).
+Configure Lightning CSS. Les options de transformation complètes peuvent être trouvées dans [le dépôt Lightning CSS](https://github.com/parcel-bundler/lightningcss/blob/master/node/index.d.ts).
## json.namedExports
-- **Type:** `boolean`
-- **Default:** `true`
+- **Type :** `boolean`
+- **Default :** `true`
-Whether to support named imports from `.json` files.
+Pour activer le support des importations nommées à partir de fichiers `.json`.
## json.stringify
-- **Type:** `boolean | 'auto'`
-- **Default:** `'auto'`
+- **Type :** `boolean | 'auto'`
+- **Default :** `'auto'`
-If set to `true`, imported JSON will be transformed into `export default JSON.parse("...")` which is significantly more performant than Object literals, especially when the JSON file is large.
+Si défini à `true`, le JSON importé sera transformé en `export default JSON.parse("...")` qui est beaucoup plus performant que les objets literaux, surtout lorsque le fichier JSON est volumineux.
-If set to `'auto'`, the data will be stringified only if [the data is bigger than 10kB](https://v8.dev/blog/cost-of-javascript-2019#json:~:text=A%20good%20rule%20of%20thumb%20is%20to%20apply%20this%20technique%20for%20objects%20of%2010%20kB%20or%20larger).
+Si défini à `'auto'`, les données seront stringifiées uniquement si [elles sont plus grandes que 10kB](https://v8.dev/blog/cost-of-javascript-2019#json:~:text=A%20good%20rule%20of%20thumb%20is%20to%20apply%20this%20technique%20for%20objects%20of%2010%20kB%20or%20larger).
## esbuild
-- **Type:** `ESBuildOptions | false`
+- **Type :** `ESBuildOptions | false`
-`ESBuildOptions` extends [esbuild's own transform options](https://esbuild.github.io/api/#transform). The most common use case is customizing JSX:
+`ESBuildOptions` étend les [options de transformation d'esbuild](https://esbuild.github.io/api/#transform). Le cas d'utilisation le plus courant est la personnalisation de JSX :
```js
export default defineConfig({
@@ -369,9 +369,9 @@ export default defineConfig({
})
```
-By default, esbuild is applied to `ts`, `jsx` and `tsx` files. You can customize this with `esbuild.include` and `esbuild.exclude`, which can be a regex, a [picomatch](https://github.com/micromatch/picomatch#globbing-features) pattern, or an array of either.
+Par défaut, esbuild est appliqué aux fichiers `ts`, `jsx` et `tsx`. Vous pouvez personnaliser cela avec `esbuild.include` et `esbuild.exclude`, qui peuvent être une regex, un modèle [picomatch](https://github.com/micromatch/picomatch#globbing-features), ou un tableau de l'un ou l'autre.
-In addition, you can also use `esbuild.jsxInject` to automatically inject JSX helper imports for every file transformed by esbuild:
+En outre, vous pouvez également utiliser `esbuild.jsxInject` pour injecter automatiquement des importations d'helper JSX pour chaque fichier transformé par esbuild :
```js
export default defineConfig({
@@ -381,24 +381,24 @@ export default defineConfig({
})
```
-When [`build.minify`](./build-options.md#build-minify) is `true`, all minify optimizations are applied by default. To disable [certain aspects](https://esbuild.github.io/api/#minify) of it, set any of `esbuild.minifyIdentifiers`, `esbuild.minifySyntax`, or `esbuild.minifyWhitespace` options to `false`. Note the `esbuild.minify` option can't be used to override `build.minify`.
+Lorsque [`build.minify`](./build-options.md#build-minify) est `true`, toutes les optimisations de minification sont appliquées par défaut. Pour désactiver [certains aspects](https://esbuild.github.io/api/#minify), définissez l'une des options `esbuild.minifyIdentifiers`, `esbuild.minifySyntax` ou `esbuild.minifyWhitespace` à `false`. Notez que l'option `esbuild.minify` ne peut pas être utilisée pour remplacer `build.minify`.
-Set to `false` to disable esbuild transforms.
+Définissez à `false` pour désactiver les transformations esbuild.
## assetsInclude
-- **Type:** `string | RegExp | (string | RegExp)[]`
-- **Related:** [Static Asset Handling](/guide/assets)
+- **Type :** `string | RegExp | (string | RegExp)[]`
+- **Lié :** [Gestion des assets statiques](/guide/assets)
-Specify additional [picomatch patterns](https://github.com/micromatch/picomatch#globbing-features) to be treated as static assets so that:
+Spécifiez des [modèles picomatch](https://github.com/micromatch/picomatch#globbing-features) supplémentaires à traiter comme des assets statiques afin que :
-- They will be excluded from the plugin transform pipeline when referenced from HTML or directly requested over `fetch` or XHR.
+- Ils seront exclus du pipeline de transformation des plugins lorsqu'ils sont référencés depuis HTML ou directement demandés via `fetch` ou XHR.
-- Importing them from JS will return their resolved URL string (this can be overwritten if you have a `enforce: 'pre'` plugin to handle the asset type differently).
+- Les importer depuis JS renverra leur URL résolue sous forme de chaîne (cela peut être remplacé si vous avez un plugin `enforce: 'pre'` pour gérer le type d'asset différemment).
-The built-in asset type list can be found [here](https://github.com/vitejs/vite/blob/main/packages/vite/src/node/constants.ts).
+La liste des types d'assets intégrés peut être trouvée [ici](https://github.com/vitejs/vite/blob/main/packages/vite/src/node/constants.ts).
-**Example:**
+**Exemple :**
```js
export default defineConfig({
@@ -408,13 +408,13 @@ export default defineConfig({
## logLevel
-- **Type:** `'info' | 'warn' | 'error' | 'silent'`
+- **Type :** `'info' | 'warn' | 'error' | 'silent'`
-Adjust console output verbosity. Default is `'info'`.
+Ajuste la verbosité des messages de la console. Par défaut : `'info'`.
## customLogger
-- **Type:**
+- **Type :**
```ts
interface Logger {
info(msg: string, options?: LogOptions): void
@@ -427,7 +427,7 @@ Adjust console output verbosity. Default is `'info'`.
}
```
-Use a custom logger to log messages. You can use Vite's `createLogger` API to get the default logger and customize it to, for example, change the message or filter out certain warnings.
+Utilisez un logger personnalisé pour les messages. Vous pouvez utiliser l'API `createLogger` de Vite pour obtenir le logger par défaut et le personnaliser pour, par exemple, modifier le message ou filtrer certains avertissements.
```ts twoslash
import { createLogger, defineConfig } from 'vite'
@@ -436,7 +436,7 @@ const logger = createLogger()
const loggerWarn = logger.warn
logger.warn = (msg, options) => {
- // Ignore empty CSS files warning
+ // Ignorer l'avertissement des fichiers CSS vides
if (msg.includes('vite:css') && msg.includes(' is empty')) return
loggerWarn(msg, options)
}
@@ -448,31 +448,31 @@ export default defineConfig({
## clearScreen
-- **Type:** `boolean`
-- **Default:** `true`
+- **Type :** `boolean`
+- **Default :** `true`
-Set to `false` to prevent Vite from clearing the terminal screen when logging certain messages. Via command line, use `--clearScreen false`.
+Définissez à `false` pour empêcher Vite d'effacer l'écran du terminal lors de l'affichage de certains messages. Via la ligne de commande, utilisez `--clearScreen false`.
## envDir
- **Type:** `string | false`
- **Default:** `root`
-The directory from which `.env` files are loaded. Can be an absolute path, or a path relative to the project root. `false` will disable the `.env` file loading.
+Le répertoire à partir duquel les fichiers `.env` sont chargés. Peut être un chemin absolu, ou un chemin relatif à la racine du projet. Désactive le chargement du fichier `.env` si `false`.
-See [here](/guide/env-and-mode#env-files) for more about environment files.
+Voir [ici](/guide/env-and-mode#env-files) pour plus d'informations sur les fichiers d'environnement.
## envPrefix
-- **Type:** `string | string[]`
-- **Default:** `VITE_`
+- **Type :** `string | string[]`
+- **Default :** `VITE_`
-Env variables starting with `envPrefix` will be exposed to your client source code via import.meta.env.
+Les variables d'environnement commençant par `envPrefix` seront exposées à votre code source client via import.meta.env.
-:::warning SECURITY NOTES
-`envPrefix` should not be set as `''`, which will expose all your env variables and cause unexpected leaking of sensitive information. Vite will throw an error when detecting `''`.
+:::warning NOTES DE SÉCURITÉ
+`envPrefix` ne doit pas être défini comme `''`, ce qui exposerait toutes vos variables d'environnement et pourrait entraîner une fuite inattendue d'informations sensibles. Vite générera une erreur lors de la détection de `''`.
-If you would like to expose an unprefixed variable, you can use [define](#define) to expose it:
+Si vous souhaitez exposer une variable sans préfixe, vous pouvez utiliser [define](#define) pour l'exposer :
```js
define: {
@@ -484,22 +484,22 @@ define: {
## appType
-- **Type:** `'spa' | 'mpa' | 'custom'`
-- **Default:** `'spa'`
+- **Type :** `'spa' | 'mpa' | 'custom'`
+- **Default :** `'spa'`
-Whether your application is a Single Page Application (SPA), a [Multi Page Application (MPA)](../guide/build#multi-page-app), or Custom Application (SSR and frameworks with custom HTML handling):
+Si votre application est une Single Page Application (SPA), une [Multi Page Application (MPA)](../guide/build#multi-page-app), ou une application personnalisée (SSR et frameworks avec gestion HTML personnalisée) :
-- `'spa'`: include HTML middlewares and use SPA fallback. Configure [sirv](https://github.com/lukeed/sirv) with `single: true` in preview
-- `'mpa'`: include HTML middlewares
-- `'custom'`: don't include HTML middlewares
+- `'spa'` : inclut les middlewares HTML et utilise la solution de repli SPA. Configure [sirv](https://github.com/lukeed/sirv) avec `single: true` en prévisualisation
+- `'mpa'` : inclut les middlewares HTML
+- `'custom'` : n'inclut pas les middlewares HTML
-Learn more in Vite's [SSR guide](/guide/ssr#vite-cli). Related: [`server.middlewareMode`](./server-options#server-middlewaremode).
+En savoir plus dans le [guide SSR](/guide/ssr#vite-cli) de Vite. Connexe : [`server.middlewareMode`](./server-options#server-middlewaremode).
## future
-- **Type:** `Record`
-- **Related:** [Breaking Changes](/changes/)
+- **Type :** `Record`
+- **Lié :** [Changements majeurs](/changes/)
-Enable future breaking changes to prepare for a smooth migration to the next major version of Vite. The list may be updated, added, or removed at any time as new features are developed.
+Activez les futurs changements majeurs pour préparer une migration en douceur vers la prochaine version majeure de Vite. La liste peut être mise à jour, ajoutée ou supprimée à tout moment au fur et à mesure que de nouvelles fonctionnalités sont développées.
-See the [Breaking Changes](/changes/) page for details of the possible options.
+Consultez la page [Changements majeurs](/changes/) pour les détails des options possibles.
diff --git a/docs/config/ssr-options.md b/docs/config/ssr-options.md
index 0d64c4d..0b1ba1f 100644
--- a/docs/config/ssr-options.md
+++ b/docs/config/ssr-options.md
@@ -1,35 +1,35 @@
-# SSR Options
+# Options SSR
-Unless noted, the options in this section are applied to both dev and build.
+Sauf mention contraire, les options de cette section s'appliquent à build et preview.
## ssr.external
- **Type:** `string[] | true`
- **Related:** [SSR Externals](/guide/ssr#ssr-externals)
-Externalize the given dependencies and their transitive dependencies for SSR. By default, all dependencies are externalized except for linked dependencies (for HMR). If you prefer to externalize the linked dependency, you can pass its name to this option.
+Externalise les dépendances données et leurs dépendances transitives pour SSR. Par défaut, toutes les dépendances sont externalisées sauf les dépendances liées (pour HMR). Si vous préférez externaliser la dépendance liée, vous pouvez passer son nom à cette option.
-If `true`, all dependencies including linked dependencies are externalized.
+Si `true`, toutes les dépendances, y compris les dépendances liées, sont externalisées.
-Note that the explicitly listed dependencies (using `string[]` type) will always take priority if they're also listed in `ssr.noExternal` (using any type).
+Note que les dépendances explicitement listées (en utilisant le type `string[]`) prendront toujours la priorité si elles sont également listées dans `ssr.noExternal` (en utilisant n'importe quel type).
## ssr.noExternal
- **Type:** `string | RegExp | (string | RegExp)[] | true`
- **Related:** [SSR Externals](/guide/ssr#ssr-externals)
-Prevent listed dependencies from being externalized for SSR, which they will get bundled in build. By default, only linked dependencies are not externalized (for HMR). If you prefer to externalize the linked dependency, you can pass its name to the `ssr.external` option.
+Empêche les dépendances listées d'être externalisées pour le SSR, qui seront bundlées dans build. Par défaut, seules les dépendances liées ne sont pas externalisées (pour HMR). Si vous préférez externaliser la dépendance liée, vous pouvez passer son nom à l'option `ssr.external`.
-If `true`, no dependencies are externalized. However, dependencies explicitly listed in `ssr.external` (using `string[]` type) can take priority and still be externalized. If `ssr.target: 'node'` is set, Node.js built-ins will also be externalized by default.
+Si `true`, aucune dépendance n'est externalisée. Cependant, les dépendances explicitement listées dans `ssr.external` (en utilisant le type `string[]`) peuvent prendre la priorité et être externalisées. Si `ssr.target: 'node'` est configuré, les dépendances intégrées de Node.js seront également externalisées par défaut.
-Note that if both `ssr.noExternal: true` and `ssr.external: true` are configured, `ssr.noExternal` takes priority and no dependencies are externalized.
+Note que si `ssr.noExternal: true` et `ssr.external: true` sont configurés, `ssr.noExternal` prendra la priorité et aucune dépendance ne sera externalisée.
## ssr.target
- **Type:** `'node' | 'webworker'`
- **Default:** `node`
-Build target for the SSR server.
+Cible de build pour le serveur SSR.
## ssr.resolve.conditions
@@ -37,20 +37,20 @@ Build target for the SSR server.
- **Default:** `['module', 'node', 'development|production']` (`defaultServerConditions`) (`['module', 'browser', 'development|production']` (`defaultClientConditions`) for `ssr.target === 'webworker'`)
- **Related:** [Resolve Conditions](./shared-options.md#resolve-conditions)
-These conditions are used in the plugin pipeline, and only affect non-externalized dependencies during the SSR build. Use `ssr.resolve.externalConditions` to affect externalized imports.
+Ces conditions sont utilisées dans le pipeline de plugin, et ne s'appliquent qu'aux dépendances non externalisées lors du build SSR. Utilisez `ssr.resolve.externalConditions` pour affecter les imports externalisés.
## ssr.resolve.externalConditions
- **Type:** `string[]`
- **Default:** `['node']`
-Conditions that are used during ssr import (including `ssrLoadModule`) of externalized direct dependencies (external dependencies imported by Vite).
+Conditions utilisées lors de l'importation SSR (y compris `ssrLoadModule`) des dépendances directes externalisées (dépendances externalisées importées par Vite).
:::tip
-When using this option, make sure to run Node with [`--conditions` flag](https://nodejs.org/docs/latest/api/cli.html#-c-condition---conditionscondition) with the same values in both dev and build to get a consistent behavior.
+Lorsque vous utilisez cette option, assurez-vous de lancer Node avec le [flag `--conditions`](https://nodejs.org/docs/latest/api/cli.html#-c-condition---conditionscondition) avec les mêmes valeurs dans les deux environnements de développement et de build pour obtenir un comportement cohérent.
-For example, when setting `['node', 'custom']`, you should run `NODE_OPTIONS='--conditions custom' vite` in dev and `NODE_OPTIONS="--conditions custom" node ./dist/server.js` after build.
+Par exemple, lorsque vous définissez `['node', 'custom']`, vous devez lancer `NODE_OPTIONS='--conditions custom' vite` dans l'environnement de développement et `NODE_OPTIONS="--conditions custom" node ./dist/server.js` après le build.
:::
@@ -59,4 +59,4 @@ For example, when setting `['node', 'custom']`, you should run `NODE_OPTIONS='--
- **Type:** `string[]`
- **Default:** `['module', 'jsnext:main', 'jsnext']`
-List of fields in `package.json` to try when resolving a package's entry point. Note this takes lower precedence than conditional exports resolved from the `exports` field: if an entry point is successfully resolved from `exports`, the main field will be ignored. This setting only affect non-externalized dependencies.
+Liste des champs dans `package.json` à essayer lors de la résolution du point d'entrée d'un package. Notez que cela prend une priorité inférieure aux exports conditionnels résolus à partir du champ `exports` : si un point d'entrée est résolu avec succès à partir de `exports`, le champ principal sera ignoré. Cette configuration ne s'applique qu'aux dépendances non externalisées.
diff --git a/docs/config/worker-options.md b/docs/config/worker-options.md
index 91edfe1..be175e6 100644
--- a/docs/config/worker-options.md
+++ b/docs/config/worker-options.md
@@ -1,23 +1,22 @@
-# Worker Options
+# Options du Worker
-Unless noted, the options in this section are applied to all dev, build, and preview.
+Sauf mention contraire, les options de cette section s'appliquent à tous les dev, build et preview.
## worker.format
- **Type:** `'es' | 'iife'`
- **Default:** `'iife'`
-Output format for worker bundle.
+Format de sortie pour le bundle du worker.
## worker.plugins
- **Type:** [`() => (Plugin | Plugin[])[]`](./shared-options#plugins)
-Vite plugins that apply to the worker bundles. Note that [config.plugins](./shared-options#plugins) only applies to workers in dev, it should be configured here instead for build.
-The function should return new plugin instances as they are used in parallel rollup worker builds. As such, modifying `config.worker` options in the `config` hook will be ignored.
+Plugins Vite qui s'appliquent aux bundles du worker. Notez que [config.plugins](./shared-options#plugins) ne s'applique qu'aux workers en mode dev, il doit être configuré ici à la place pour le build. La fonction doit retourner des nouvelles instances de plugin comme elles sont utilisées dans les constructions parallèles du worker Rollup. Ainsi, modifier les options `config.worker` dans le hook `config` sera ignoré.
## worker.rollupOptions
- **Type:** [`RollupOptions`](https://rollupjs.org/configuration-options/)
-Rollup options to build worker bundle.
+Options Rollup pour construire le bundle du worker.
diff --git a/docs/guide/api-plugin.md b/docs/guide/api-plugin.md
index b8ef5fb..ddb929e 100644
--- a/docs/guide/api-plugin.md
+++ b/docs/guide/api-plugin.md
@@ -6,7 +6,7 @@ Vite plugins extends Rollup's well-designed plugin interface with a few extra Vi
## Authoring a Plugin
-Vite strives to offer established patterns out of the box, so before creating a new plugin make sure that you check the [Features guide](https://vite.dev/guide/features) to see if your need is covered. Also review available community plugins, both in the form of a [compatible Rollup plugin](https://github.com/rollup/awesome) and [Vite Specific plugins](https://github.com/vitejs/awesome-vite#plugins)
+Vite strives to offer established patterns out of the box, so before creating a new plugin make sure that you check the [Features guide](https://fr.vite.dev/guide/features) to see if your need is covered. Also review available community plugins, both in the form of a [compatible Rollup plugin](https://github.com/rollup/awesome) and [Vite Specific plugins](https://github.com/vitejs/awesome-vite#plugins)
When creating a plugin, you can inline it in your `vite.config.js`. There is no need to create a new package for it. Once you see that a plugin was useful in your projects, consider sharing it to help others [in the ecosystem](https://chat.vite.dev).
diff --git a/docs/guide/cli.md b/docs/guide/cli.md
index b6eeb98..10960ee 100644
--- a/docs/guide/cli.md
+++ b/docs/guide/cli.md
@@ -1,12 +1,12 @@
-# Command Line Interface
+# Interface en ligne de commande
-## Dev server
+## Serveur de développement
### `vite`
-Start Vite dev server in the current directory. `vite dev` and `vite serve` are aliases for `vite`.
+Démarrer le serveur de développement Vite dans le répertoire courant. `vite dev` et `vite serve` sont des alias pour `vite`.
-#### Usage
+#### Utilisation
```bash
vite [root]
@@ -14,33 +14,33 @@ vite [root]
#### Options
-| Options | |
-| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `--host [host]` | Specify hostname (`string`) |
-| `--port ` | Specify port (`number`) |
-| `--open [path]` | Open browser on startup (`boolean \| string`) |
-| `--cors` | Enable CORS (`boolean`) |
-| `--strictPort` | Exit if specified port is already in use (`boolean`) |
-| `--force` | Force the optimizer to ignore the cache and re-bundle (`boolean`) |
-| `-c, --config ` | Use specified config file (`string`) |
-| `--base ` | Public base path (default: `/`) (`string`) |
-| `-l, --logLevel ` | info \| warn \| error \| silent (`string`) |
-| `--clearScreen` | Allow/disable clear screen when logging (`boolean`) |
-| `--configLoader ` | Use `bundle` to bundle the config with esbuild, or `runner` (experimental) to process it on the fly, or `native` (experimental) to load using the native runtime (default: `bundle`) |
-| `--profile` | Start built-in Node.js inspector (check [Performance bottlenecks](/guide/troubleshooting#performance-bottlenecks)) |
-| `-d, --debug [feat]` | Show debug logs (`string \| boolean`) |
-| `-f, --filter ` | Filter debug logs (`string`) |
-| `-m, --mode ` | Set env mode (`string`) |
-| `-h, --help` | Display available CLI options |
-| `-v, --version` | Display version number |
+| Options | |
+| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `--host [host]` | Spécifier le nom d'hôte (`string`) |
+| `--port ` | Spécifier le port (`number`) |
+| `--open [path]` | Ouvrir le navigateur au démarrage (`boolean \| string`) |
+| `--cors` | Activer CORS (`boolean`) |
+| `--strictPort` | Quitter si le port spécifié est déjà utilisé (`boolean`) |
+| `--force` | Forcer l'optimiseur à ignorer le cache et refaire le regroupement (`boolean`) |
+| `-c, --config ` | Utiliser le fichier de configuration spécifié (`string`) |
+| `--base ` | Chemin de base public (par défaut : `/`) (`string`) |
+| `-l, --logLevel ` | info \| warn \| error \| silent (`string`) |
+| `--clearScreen` | Autoriser/désactiver l'effacement de l'écran lors de la journalisation (`boolean`) |
+| `--configLoader ` | Utiliser `bundle` pour regrouper la configuration avec esbuild, ou `runner` (expérimental) pour la traiter à la volée, ou `native` (expérimental) pour la charger en utilisant le runtime natif (par défaut : `bundle`) |
+| `--profile` | Démarrer l'inspecteur Node.js intégré (vérifier [Goulets d'étranglement de performance](/guide/troubleshooting#performance-bottlenecks)) |
+| `-d, --debug [feat]` | Afficher les logs de débogage (`string \| boolean`) |
+| `-f, --filter ` | Filtrer les logs de débogage (`string`) |
+| `-m, --mode ` | Définir le mode d'environnement (`string`) |
+| `-h, --help` | Afficher les options CLI disponibles |
+| `-v, --version` | Afficher le numéro de version |
## Build
### `vite build`
-Build for production.
+Construction pour la production.
-#### Usage
+#### Utilisation
```bash
vite build [root]
@@ -48,40 +48,40 @@ vite build [root]
#### Options
-| Options | |
-| ------------------------------ | ---------------------------------------------------------------------------------------------------------------------- |
-| `--target ` | Transpile target (default: `"modules"`) (`string`) |
-| `--outDir ` | Output directory (default: `dist`) (`string`) |
-| `--assetsDir ` | Directory under outDir to place assets in (default: `"assets"`) (`string`) |
-| `--assetsInlineLimit ` | Static asset base64 inline threshold in bytes (default: `4096`) (`number`) |
-| `--ssr [entry]` | Build specified entry for server-side rendering (`string`) |
-| `--sourcemap [output]` | Output source maps for build (default: `false`) (`boolean \| "inline" \| "hidden"`) |
-| `--minify [minifier]` | Enable/disable minification, or specify minifier to use (default: `"esbuild"`) (`boolean \| "terser" \| "esbuild"`) |
-| `--manifest [name]` | Emit build manifest json (`boolean \| string`) |
-| `--ssrManifest [name]` | Emit ssr manifest json (`boolean \| string`) |
-| `--emptyOutDir` | Force empty outDir when it's outside of root (`boolean`) |
-| `-w, --watch` | Rebuilds when modules have changed on disk (`boolean`) |
-| `-c, --config ` | Use specified config file (`string`) |
-| `--base ` | Public base path (default: `/`) (`string`) |
-| `-l, --logLevel ` | Info \| warn \| error \| silent (`string`) |
-| `--clearScreen` | Allow/disable clear screen when logging (`boolean`) |
-| `--configLoader ` | Use `bundle` to bundle the config with esbuild or `runner` (experimental) to process it on the fly (default: `bundle`) |
-| `--profile` | Start built-in Node.js inspector (check [Performance bottlenecks](/guide/troubleshooting#performance-bottlenecks)) |
-| `-d, --debug [feat]` | Show debug logs (`string \| boolean`) |
-| `-f, --filter ` | Filter debug logs (`string`) |
-| `-m, --mode ` | Set env mode (`string`) |
-| `-h, --help` | Display available CLI options |
-| `--app` | Build all environments, same as `builder: {}` (`boolean`, experimental) |
-
-## Others
+| Options | |
+| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
+| `--target ` | Cible de transpilation (par défaut : `"modules"`) (`string`) |
+| `--outDir ` | Répertoire de sortie (par défaut : `dist`) (`string`) |
+| `--assetsDir ` | Répertoire sous outDir pour placer les assets (par défaut : `"assets"`) (`string`) |
+| `--assetsInlineLimit ` | Seuil d'intégration en base64 des assets statiques en octets (par défaut : `4096`) (`number`) |
+| `--ssr [entry]` | Compiler l'entrée spécifiée pour le rendu côté serveur (`string`) |
+| `--sourcemap [output]` | Générer des source maps pour le build (par défaut : `false`) (`boolean \| "inline" \| "hidden"`) |
+| `--minify [minifier]` | Activer/désactiver la minification, ou spécifier le minifieur à utiliser (par défaut : `"esbuild"`) (`boolean \| "terser" \| "esbuild"`) |
+| `--manifest [name]` | Émettre un manifeste de build en json (`boolean \| string`) |
+| `--ssrManifest [name]` | Émettre un manifeste ssr en json (`boolean \| string`) |
+| `--emptyOutDir` | Forcer le vidage de outDir quand il est en dehors de root (`boolean`) |
+| `-w, --watch` | Recompiler lorsque les modules ont changé sur le disque (`boolean`) |
+| `-c, --config ` | Utiliser le fichier de configuration spécifié (`string`) |
+| `--base ` | Chemin de base public (par défaut : `/`) (`string`) |
+| `-l, --logLevel ` | Info \| warn \| error \| silent (`string`) |
+| `--clearScreen` | Autoriser/désactiver l'effacement de l'écran lors de la journalisation (`boolean`) |
+| `--configLoader ` | Utiliser `bundle` pour regrouper la configuration avec esbuild ou `runner` (expérimental) pour la traiter à la volée (par défaut : `bundle`) |
+| `--profile` | Démarrer l'inspecteur Node.js intégré (vérifier [Goulets d'étranglement de performance](/guide/troubleshooting#performance-bottlenecks)) |
+| `-d, --debug [feat]` | Afficher les logs de débogage (`string \| boolean`) |
+| `-f, --filter ` | Filtrer les logs de débogage (`string`) |
+| `-m, --mode ` | Définir le mode d'environnement (`string`) |
+| `-h, --help` | Afficher les options CLI disponibles |
+| `--app` | Compiler tous les environnements, équivalent à `builder: {}` (`boolean`, expérimental) |
+
+## Autres
### `vite optimize`
-Pre-bundle dependencies.
+Pré-regrouper les dépendances.
-**Deprecated**: the pre-bundle process runs automatically and does not need to be called.
+**Déprécié** : le processus de pré-regroupement s'exécute automatiquement et n'a pas besoin d'être appelé.
-#### Usage
+#### Utilisation
```bash
vite optimize [root]
@@ -89,24 +89,24 @@ vite optimize [root]
#### Options
-| Options | |
-| ------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
-| `--force` | Force the optimizer to ignore the cache and re-bundle (`boolean`) |
-| `-c, --config ` | Use specified config file (`string`) |
-| `--base ` | Public base path (default: `/`) (`string`) |
-| `-l, --logLevel ` | Info \| warn \| error \| silent (`string`) |
-| `--clearScreen` | Allow/disable clear screen when logging (`boolean`) |
-| `--configLoader ` | Use `bundle` to bundle the config with esbuild or `runner` (experimental) to process it on the fly (default: `bundle`) |
-| `-d, --debug [feat]` | Show debug logs (`string \| boolean`) |
-| `-f, --filter ` | Filter debug logs (`string`) |
-| `-m, --mode ` | Set env mode (`string`) |
-| `-h, --help` | Display available CLI options |
+| Options | |
+| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
+| `--force` | Forcer l'optimiseur à ignorer le cache et refaire le regroupement (`boolean`) |
+| `-c, --config ` | Utiliser le fichier de configuration spécifié (`string`) |
+| `--base ` | Chemin de base public (par défaut : `/`) (`string`) |
+| `-l, --logLevel ` | Info \| warn \| error \| silent (`string`) |
+| `--clearScreen` | Autoriser/désactiver l'effacement de l'écran lors de la journalisation (`boolean`) |
+| `--configLoader ` | Utiliser `bundle` pour regrouper la configuration avec esbuild ou `runner` (expérimental) pour la traiter à la volée (par défaut : `bundle`) |
+| `-d, --debug [feat]` | Afficher les logs de débogage (`string \| boolean`) |
+| `-f, --filter ` | Filtrer les logs de débogage (`string`) |
+| `-m, --mode ` | Définir le mode d'environnement (`string`) |
+| `-h, --help` | Afficher les options CLI disponibles |
### `vite preview`
-Locally preview the production build. Do not use this as a production server as it's not designed for it.
+Prévisualiser localement le build de production. Ne pas utiliser ceci comme serveur de production car il n'est pas conçu pour cela.
-#### Usage
+#### Utilisation
```bash
vite preview [root]
@@ -114,19 +114,19 @@ vite preview [root]
#### Options
-| Options | |
-| ------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
-| `--host [host]` | Specify hostname (`string`) |
-| `--port ` | Specify port (`number`) |
-| `--strictPort` | Exit if specified port is already in use (`boolean`) |
-| `--open [path]` | Open browser on startup (`boolean \| string`) |
-| `--outDir ` | Output directory (default: `dist`)(`string`) |
-| `-c, --config ` | Use specified config file (`string`) |
-| `--base ` | Public base path (default: `/`) (`string`) |
-| `-l, --logLevel ` | Info \| warn \| error \| silent (`string`) |
-| `--clearScreen` | Allow/disable clear screen when logging (`boolean`) |
-| `--configLoader ` | Use `bundle` to bundle the config with esbuild or `runner` (experimental) to process it on the fly (default: `bundle`) |
-| `-d, --debug [feat]` | Show debug logs (`string \| boolean`) |
-| `-f, --filter ` | Filter debug logs (`string`) |
-| `-m, --mode ` | Set env mode (`string`) |
-| `-h, --help` | Display available CLI options |
+| Options | |
+| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
+| `--host [host]` | Spécifier le nom d'hôte (`string`) |
+| `--port ` | Spécifier le port (`number`) |
+| `--strictPort` | Quitter si le port spécifié est déjà utilisé (`boolean`) |
+| `--open [path]` | Ouvrir le navigateur au démarrage (`boolean \| string`) |
+| `--outDir ` | Répertoire de sortie (par défaut : `dist`)(`string`) |
+| `-c, --config ` | Utiliser le fichier de configuration spécifié (`string`) |
+| `--base ` | Chemin de base public (par défaut : `/`) (`string`) |
+| `-l, --logLevel ` | Info \| warn \| error \| silent (`string`) |
+| `--clearScreen` | Autoriser/désactiver l'effacement de l'écran lors de la journalisation (`boolean`) |
+| `--configLoader ` | Utiliser `bundle` pour regrouper la configuration avec esbuild ou `runner` (expérimental) pour la traiter à la volée (par défaut : `bundle`) |
+| `-d, --debug [feat]` | Afficher les logs de débogage (`string \| boolean`) |
+| `-f, --filter ` | Filtrer les logs de débogage (`string`) |
+| `-m, --mode ` | Définir le mode d'environnement (`string`) |
+| `-h, --help` | Afficher les options CLI disponibles |
diff --git a/docs/guide/features.md b/docs/guide/features.md
index 86fc24f..be61c4f 100644
--- a/docs/guide/features.md
+++ b/docs/guide/features.md
@@ -214,7 +214,7 @@ All modern frameworks maintain integrations with Vite. Most framework plugins ar
- React support via [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react)
- React using SWC support via [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc)
-Check out the [Plugins Guide](https://vite.dev/plugins) for more information.
+Check out the [Plugins Guide](https://fr.vite.dev/plugins) for more information.
## JSX
@@ -543,7 +543,7 @@ const modules = {
#### Custom Queries
-You can also use the `query` option to provide queries to imports, for example, to import assets [as a string](https://vite.dev/guide/assets.html#importing-asset-as-string) or [as a url](https://vite.dev/guide/assets.html#importing-asset-as-url):
+You can also use the `query` option to provide queries to imports, for example, to import assets [as a string](https://fr.vite.dev/guide/assets.html#importing-asset-as-string) or [as a url](https://fr.vite.dev/guide/assets.html#importing-asset-as-url):
```ts twoslash
import 'vite/client'
diff --git a/docs/guide/index.md b/docs/guide/index.md
index 0ea505a..4338141 100644
--- a/docs/guide/index.md
+++ b/docs/guide/index.md
@@ -1,34 +1,34 @@
-# Getting Started
+# Bien démarrer
-## Overview
+## Vue d'ensemble
-Vite (French word for "quick", pronounced `/vit/`, like "veet") is a build tool that aims to provide a faster and leaner development experience for modern web projects. It consists of two major parts:
+Vite est un outil de build qui vise à offrir une expérience de développement plus rapide et plus légère pour les projets web modernes. Il se compose de deux parties principales :
-- A dev server that provides [rich feature enhancements](./features) over [native ES modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules), for example extremely fast [Hot Module Replacement (HMR)](./features#hot-module-replacement).
+- Un serveur de développement qui propose [des améliorations riches en fonctionnalités](./features) par rapport aux [modules ES natifs](https://developer.mozilla.org/fr/docs/Web/JavaScript/Guide/Modules), par exemple un [Remplacement de Module à Chaud (HMR)](./features#hot-module-replacement) extrêmement rapide.
-- A build command that bundles your code with [Rollup](https://rollupjs.org), pre-configured to output highly optimized static assets for production.
+- Une commande de build qui bundle votre code avec [Rollup](https://rollupjs.org), préconfigurée pour produire des ressources statiques hautement optimisées pour la production.
-Vite is opinionated and comes with sensible defaults out of the box. Read about what's possible in the [Features Guide](./features). Support for frameworks or integration with other tools is possible through [Plugins](./using-plugins). The [Config Section](../config/) explains how to adapt Vite to your project if needed.
+Vite est opiniâtre et propose des valeurs par défaut sensées dès le départ. Découvrez ce qui est possible dans le [Guide des Fonctionnalités](./features). Le support pour les frameworks ou l'intégration avec d'autres outils est possible grâce aux [Plugins](./using-plugins). La [Section de Configuration](../config/) explique comment adapter Vite à votre projet si nécessaire.
-Vite is also highly extensible via its [Plugin API](./api-plugin) and [JavaScript API](./api-javascript) with full typing support.
+Vite est également hautement extensible via son [API de Plugin](./api-plugin) et son [API JavaScript](./api-javascript) avec un support complet des types.
-You can learn more about the rationale behind the project in the [Why Vite](./why) section.
+Vous pouvez en apprendre davantage sur la logique derrière le projet dans la section [Pourquoi Vite](./why).
-## Browser Support
+## Compatibilité avec les navigateurs
-During development, Vite sets [`esnext` as the transform target](https://esbuild.github.io/api/#target), because we assume a modern browser is used and it supports all of the latest JavaScript and CSS features. This prevents syntax lowering, letting Vite serve modules as close as possible to the original source code.
+Pendant le développement, Vite définit [`esnext` comme cible de transformation](https://esbuild.github.io/api/#target), car nous supposons qu'un navigateur moderne est utilisé et qu'il prend en charge toutes les dernières fonctionnalités JavaScript et CSS. Cela évite la réduction de la syntaxe, permettant à Vite de servir les modules aussi près que possible du code source original.
-For the production build, by default Vite targets browsers that support modern JavaScript, such as [native ES Modules](https://caniuse.com/es6-module), [native ESM dynamic import](https://caniuse.com/es6-module-dynamic-import), [`import.meta`](https://caniuse.com/mdn-javascript_operators_import_meta), [nullish coalescing](https://caniuse.com/mdn-javascript_operators_nullish_coalescing), and [BigInt](https://caniuse.com/bigint). Legacy browsers can be supported via the official [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy). See the [Building for Production](./build) section for more details.
+Pour le build de production, par défaut, Vite cible les navigateurs qui prennent en charge le JavaScript moderne, tels que les [modules ES natifs](https://caniuse.com/es6-module), [l'importation dynamique de modules ES natifs](https://caniuse.com/es6-module-dynamic-import), [`import.meta`](https://caniuse.com/mdn-javascript_operators_import_meta), [les Opérateurs de coalescence des nuls (Nullish coalescing operator)](https://caniuse.com/mdn-javascript_operators_nullish_coalescing) et [BigInt](https://caniuse.com/bigint). Les navigateurs plus anciens peuvent être pris en charge via le plugin officiel [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy). Voir la section [Build pour la Production](./build) pour plus de détails.
-## Trying Vite Online
+## Essayer Vite en ligne
-You can try Vite online on [StackBlitz](https://vite.new/). It runs the Vite-based build setup directly in the browser, so it is almost identical to the local setup but doesn't require installing anything on your machine. You can navigate to `vite.new/{template}` to select which framework to use.
+Vous pouvez essayer Vite en ligne sur [StackBlitz](https://vite.new/). Il exécute la configuration de build basée sur Vite directement dans le navigateur, elle est donc presque identique à la configuration locale mais ne nécessite pas d'installer quoi que ce soit sur votre machine. Vous pouvez naviguer vers `vite.new/{template}` pour sélectionner le framework à utiliser.
-The supported template presets are:
+Les modèles prédéfinis pris en charge sont :
| JavaScript | TypeScript |
| :---------------------------------: | :---------------------------------------: |
@@ -41,10 +41,10 @@ The supported template presets are:
| [solid](https://vite.new/solid) | [solid-ts](https://vite.new/solid-ts) |
| [qwik](https://vite.new/qwik) | [qwik-ts](https://vite.new/qwik-ts) |
-## Scaffolding Your First Vite Project
+## Créer votre premier projet Vite
-::: tip Compatibility Note
-Vite requires [Node.js](https://nodejs.org/en/) version 18+ or 20+. However, some templates require a higher Node.js version to work, please upgrade if your package manager warns about it.
+::: tip Note de compatibilité
+Vite nécessite [Node.js](https://nodejs.org/fr/) version 18+ ou 20+. Cependant, certains modèles nécessitent une version Node.js supérieure pour fonctionner, veuillez effectuer une mise à niveau si votre gestionnaire de paquets vous en avertit.
:::
::: code-group
@@ -71,14 +71,14 @@ $ deno init --npm vite
:::
-Then follow the prompts!
+Puis suivez les instructions !
-You can also directly specify the project name and the template you want to use via additional command line options. For example, to scaffold a Vite + Vue project, run:
+Vous pouvez également spécifier directement le nom du projet et le modèle que vous souhaitez utiliser via des options supplémentaires en ligne de commande. Par exemple, pour créer un projet Vite + Vue, exécutez :
::: code-group
```bash [npm]
-# npm 7+, extra double-dash is needed:
+# npm 7+, double tiret supplémentaire nécessaire :
$ npm create vite@latest my-vue-app -- --template vue
```
@@ -100,17 +100,17 @@ $ deno init --npm vite my-vue-app --template vue
:::
-See [create-vite](https://github.com/vitejs/vite/tree/main/packages/create-vite) for more details on each supported template: `vanilla`, `vanilla-ts`, `vue`, `vue-ts`, `react`, `react-ts`, `react-swc`, `react-swc-ts`, `preact`, `preact-ts`, `lit`, `lit-ts`, `svelte`, `svelte-ts`, `solid`, `solid-ts`, `qwik`, `qwik-ts`.
+Voir [create-vite](https://github.com/vitejs/vite/tree/main/packages/create-vite) pour plus de détails sur chaque modèle pris en charge : `vanilla`, `vanilla-ts`, `vue`, `vue-ts`, `react`, `react-ts`, `react-swc`, `react-swc-ts`, `preact`, `preact-ts`, `lit`, `lit-ts`, `svelte`, `svelte-ts`, `solid`, `solid-ts`, `qwik`, `qwik-ts`.
-You can use `.` for the project name to scaffold in the current directory.
+Vous pouvez utiliser `.` comme nom de projet pour créer le projet dans le répertoire courant.
-## Community Templates
+## Templates de la communauté
-create-vite is a tool to quickly start a project from a basic template for popular frameworks. Check out Awesome Vite for [community maintained templates](https://github.com/vitejs/awesome-vite#templates) that include other tools or target different frameworks.
+create-vite est un outil pour démarrer rapidement un projet à partir d'un modèle de base pour les frameworks populaires. Consultez Awesome Vite pour les [modèles maintenus par la communauté](https://github.com/vitejs/awesome-vite#templates) qui incluent d'autres outils ou ciblent différents frameworks.
-For a template at `https://github.com/user/project`, you can try it out online using `https://github.stackblitz.com/user/project` (adding `.stackblitz` after `github` to the URL of the project).
+Pour un modèle situé sur `https://github.com/user/project`, vous pouvez l'essayer en ligne en utilisant `https://github.stackblitz.com/user/project` (en ajoutant `.stackblitz` après `github` à l'URL du projet).
-You can also use a tool like [degit](https://github.com/Rich-Harris/degit) to scaffold your project with one of the templates. Assuming the project is on GitHub and uses `main` as the default branch, you can create a local copy using:
+Vous pouvez également utiliser un outil comme [degit](https://github.com/Rich-Harris/degit) pour créer votre projet avec l'un des modèles. En supposant que le projet soit sur GitHub et utilise `main` comme branche par défaut, vous pouvez créer une copie locale en utilisant :
```bash
npx degit user/project#main my-project
@@ -120,9 +120,9 @@ npm install
npm run dev
```
-## Manual Installation
+## Installation manuelle
-In your project, you can install the `vite` CLI using:
+Dans votre projet, vous pouvez installer l'interface en ligne de commande `vite` en utilisant :
::: code-group
@@ -148,13 +148,13 @@ $ deno add -D npm:vite
:::
-And create an `index.html` file like this:
+Et créer un fichier `index.html` comme celui-ci :
```html
Hello Vite!
```
-Then run the appropriate CLI command in your terminal:
+Ensuite, exécutez la commande CLI appropriée dans votre terminal :
::: code-group
@@ -180,45 +180,45 @@ $ deno run -A npm:vite
:::
-The `index.html` will be served on `http://localhost:5173`.
+Le fichier `index.html` sera servi sur `http://localhost:5173`.
-## `index.html` and Project Root
+## `index.html` et racine du projet
-One thing you may have noticed is that in a Vite project, `index.html` is front-and-central instead of being tucked away inside `public`. This is intentional: during development Vite is a server, and `index.html` is the entry point to your application.
+Une chose que vous avez peut-être remarquée est que dans un projet Vite, `index.html` est au centre de l'attention au lieu d'être caché dans `public`. C'est intentionnel : pendant le développement, Vite est un serveur, et `index.html` est le point d'entrée de votre application.
-Vite treats `index.html` as source code and part of the module graph. It resolves `
```
-You can use any placeholder you prefer instead of ``, as long as it can be precisely replaced.
+Vous pouvez utiliser n’importe quel espace réservé que vous préférez à la place de``, tant que cela peut être exactement remplacé.
-## Conditional Logic
+## Logique conditionnelle
-If you need to perform conditional logic based on SSR vs. client, you can use
+Si vous avez besoin de faire une logique conditionnelle basée sur SSR vs. client, vous pouvez utiliser
```js twoslash
import 'vite/client'
@@ -59,11 +59,11 @@ if (import.meta.env.SSR) {
}
```
-This is statically replaced during build so it will allow tree-shaking of unused branches.
+Cela est statiquement remplacé lors de la construction, ce qui permet le balayage de l’arbre pour les branches non utilisées.
-## Setting Up the Dev Server
+## Configuration du serveur de développement
-When building an SSR app, you likely want to have full control over your main server and decouple Vite from the production environment. It is therefore recommended to use Vite in middleware mode. Here is an example with [express](https://expressjs.com/):
+Lors de la construction d’une application SSR, vous souhaiterez probablement avoir un contrôle total sur votre serveur principal et découpler Vite de l’environnement de production. Il est donc recommandé d’utiliser Vite en mode middleware. Voici un exemple avec [express](https://expressjs.com/) :
```js{15-18} twoslash [server.js]
import fs from 'node:fs'
@@ -103,9 +103,9 @@ async function createServer() {
createServer()
```
-Here `vite` is an instance of [ViteDevServer](./api-javascript#vitedevserver). `vite.middlewares` is a [Connect](https://github.com/senchalabs/connect) instance which can be used as a middleware in any connect-compatible Node.js framework.
+Ici, `vite`est une instance de [ViteDevServer](./api-javascript#vitedevserver). `vite.middlewares`est une instance de [Connect](https://github.com/senchalabs/connect) qui peut être utilisée comme middleware dans n’importe quel framework Node.js compatible connect.
-The next step is implementing the `*` handler to serve server-rendered HTML:
+La prochaine étape est d’implémenter le gestionnaire `*`pour servir le HTML rendu côté serveur :
```js twoslash [server.js]
// @noErrors
@@ -158,7 +158,7 @@ app.use('*all', async (req, res, next) => {
})
```
-The `dev` script in `package.json` should also be changed to use the server script instead:
+Le script `dev`dans `package.json`doit également être modifié pour utiliser le script serveur à la place :
```diff [package.json]
"scripts": {
@@ -167,14 +167,14 @@ The `dev` script in `package.json` should also be changed to use the server scri
}
```
-## Building for Production
+## Construction pour la production
-To ship an SSR project for production, we need to:
+Pour envoyer un projet SSR pour la production, nous avons besoin de :
-1. Produce a client build as normal;
-2. Produce an SSR build, which can be directly loaded via `import()` so that we don't have to go through Vite's `ssrLoadModule`;
+1. Produire un build client normal ;
+2. Produire un build SSR, qui peut être directement chargé via `import()`afin de ne pas passer par `ssrLoadModule`de Vite ;
-Our scripts in `package.json` will look like this:
+Nos scripts dans `package.json`ressembleront à ceci :
```json [package.json]
{
@@ -186,66 +186,64 @@ Our scripts in `package.json` will look like this:
}
```
-Note the `--ssr` flag which indicates this is an SSR build. It should also specify the SSR entry.
+Notez le drapeau `--ssr`qui indique que c’est un build SSR. Il doit également spécifier l’entrée SSR.
-Then, in `server.js` we need to add some production specific logic by checking `process.env.NODE_ENV`:
+Ensuite, dans `server.js`nous devons ajouter une logique spécifique à la production en vérifiant `process.env.NODE_ENV`:
-- Instead of reading the root `index.html`, use the `dist/client/index.html` as the template, since it contains the correct asset links to the client build.
+- Au lieu de lire la `index.html`racine, utilisez-le `dist/client/index.html`comme template, car il contient les liens de ressources corrects vers le build client.
-- Instead of `await vite.ssrLoadModule('/src/entry-server.js')`, use `import('./dist/server/entry-server.js')` (this file is the result of the SSR build).
+- Au lieu de`await vite.ssrLoadModule('/src/entry-server.js')`, utilisez `import('./dist/server/entry-server.js')`(ce fichier est le résultat du build SSR).
-- Move the creation and all usage of the `vite` dev server behind dev-only conditional branches, then add static file serving middlewares to serve files from `dist/client`.
+- Déplacez la création et toutes les utilisations de l’instance `vite`du serveur de développement derrière des branches conditionnelles dev-only, puis ajoutez des middlewares de serveur de fichiers statiques pour servir les fichiers de`dist/client`.
-Refer to the [example projects](#example-projects) for a working setup.
+Consultez les [exemples de projets](#exemples-de-projets) pour un exemple de configuration.
-## Generating Preload Directives
+## Génération de directives de préchargement
-`vite build` supports the `--ssrManifest` flag which will generate `.vite/ssr-manifest.json` in build output directory:
-
-```diff
+`vite build` Prend en charge le flag `--ssrManifest`qui générera `dist/client/.vite/ssr-manifest.json`pour le build client (oui, le manifeste SSR est généré à partir du build client, car nous voulons mapper les identifiants de module aux fichiers clients). Le manifeste contient des mappages des identifiants de module à leurs chunks et fichiers d’actifs associés.
- "build:client": "vite build --outDir dist/client",
+ "build:client": "vite build --outDir dist/client --ssrManifest",
```
-The above script will now generate `dist/client/.vite/ssr-manifest.json` for the client build (Yes, the SSR manifest is generated from the client build because we want to map module IDs to client files). The manifest contains mappings of module IDs to their associated chunks and asset files.
+Le script ci-dessus générera maintenant `dist/client/.vite/ssr-manifest.json` pour le build client (Oui, le manifeste SSR est généré à partir du build client car nous voulons mapper les identifiants de module aux fichiers clients). Le manifeste contient des mappages des identifiants de module à leurs chunks et fichiers d’actifs associés.
-To leverage the manifest, frameworks need to provide a way to collect the module IDs of the components that were used during a server render call.
+Pour tirer parti du manifeste, les frameworks doivent fournir une façon de collecter les identifiants de module des composants utilisés lors d’un appel de rendu côté serveur.
-`@vitejs/plugin-vue` supports this out of the box and automatically registers used component module IDs on to the associated Vue SSR context:
+`@vitejs/plugin-vue` prend en charge cela de manière intégrée et enregistre automatiquement les identifiants de module des composants utilisés lors d’un appel de rendu côté serveur sur le contexte SSR associé à Vue:
```js [src/entry-server.js]
const ctx = {}
const html = await vueServerRenderer.renderToString(app, ctx)
-// ctx.modules is now a Set of module IDs that were used during the render
+// ctx.modules est maintenant un Set d’identifiants de module qui ont été utilisés lors du rendu
```
-In the production branch of `server.js` we need to read and pass the manifest to the `render` function exported by `src/entry-server.js`. This would provide us with enough information to render preload directives for files used by async routes! See [demo source](https://github.com/vitejs/vite-plugin-vue/blob/main/playground/ssr-vue/src/entry-server.js) for a full example. You can also use this information for [103 Early Hints](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103).
+Dans la branche de production de `server.js` nous devons lire et passer le manifeste à la fonction `render` exportée par `src/entry-server.js`. Cela nous fournira suffisamment d’informations pour rendre les directives de préchargement pour les fichiers utilisés par les routes asynchrones ! Voir [source de démo](https://github.com/vitejs/vite-plugin-vue/blob/main/playground/ssr-vue/src/entry-server.js) pour un exemple complet. Vous pouvez également utiliser ces informations pour le code de statut [103 Early Hints](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103).
-## Pre-Rendering / SSG
+## Pré-rendu / SSG
-If the routes and the data needed for certain routes are known ahead of time, we can pre-render these routes into static HTML using the same logic as production SSR. This can also be considered a form of Static-Site Generation (SSG). See [demo pre-render script](https://github.com/vitejs/vite-plugin-vue/blob/main/playground/ssr-vue/prerender.js) for working example.
+Si les routes et les données nécessaires pour certaines routes sont connues à l’avance, nous pouvons pré-rendre ces routes en HTML statique en utilisant la même logique que le SSR de production. Cela peut également être considéré comme une forme de génération de site statique (SSG). Voir [script de pré-rendu de démo](https://github.com/vitejs/vite-plugin-vue/blob/main/playground/ssr-vue/prerender.js) pour un exemple de travail.
## SSR Externals
-Dependencies are "externalized" from Vite's SSR transform module system by default when running SSR. This speeds up both dev and build.
+Les dépendances sont « externalisées » par défaut du système de transformation de module SSR de Vite lors de l’exécution du SSR. Cela accélère à la fois le développement et le build.
-If a dependency needs to be transformed by Vite's pipeline, for example, because Vite features are used untranspiled in them, they can be added to [`ssr.noExternal`](../config/ssr-options.md#ssr-noexternal).
+Si une dépendance doit être transformée par le pipeline de Vite, par exemple, parce que des fonctionnalités Vite sont utilisées non transpilées dans celles-ci, elles peuvent être ajoutées à [`ssr.noExternal`](../config/ssr-options.md#ssr-noexternal).
-For linked dependencies, they are not externalized by default to take advantage of Vite's HMR. If this isn't desired, for example, to test dependencies as if they aren't linked, you can add it to [`ssr.external`](../config/ssr-options.md#ssr-external).
+Pour les dépendances liées, elles ne sont pas externalisées par défaut pour tirer parti de Vite's HMR. Si cela n'est pas souhaité, par exemple, pour tester les dépendances comme si elles ne sont pas liées, vous pouvez l'ajouter à [`ssr.external`](../config/ssr-options.md#ssr-external).
-:::warning Working with Aliases
-If you have configured aliases that redirect one package to another, you may want to alias the actual `node_modules` packages instead to make it work for SSR externalized dependencies. Both [Yarn](https://classic.yarnpkg.com/en/docs/cli/add/#toc-yarn-add-alias) and [pnpm](https://pnpm.io/aliases/) support aliasing via the `npm:` prefix.
+:::warning Travailler avec des alias
+Si vous avez configuré des alias qui redirigent un package vers un autre, vous souhaiterez peut-être aliaser les packages `node_modules` réels au lieu de cela pour que cela fonctionne pour les dépendances externalisées SSR. Les deux [Yarn](https://classic.yarnpkg.com/en/docs/cli/add/#toc-yarn-add-alias) et [pnpm](https://pnpm.io/aliases/) prennent en charge l'aliasage via le préfixe `npm:`.
:::
-## SSR-specific Plugin Logic
+## Logique de plugin SSR spécifique
-Some frameworks such as Vue or Svelte compile components into different formats based on client vs. SSR. To support conditional transforms, Vite passes an additional `ssr` property in the `options` object of the following plugin hooks:
+Certains frameworks tels que Vue ou Svelte compilent les composants en différents formats en fonction du client vs. SSR. Pour prendre en charge les transformations conditionnelles, Vite passe une propriété supplémentaire `ssr` dans l'objet `options` des hooks de plugin suivants :
- `resolveId`
- `load`
- `transform`
-**Example:**
+**Exemple:**
```js twoslash
/** @type {() => import('vite').Plugin} */
@@ -262,31 +260,31 @@ export function mySSRPlugin() {
}
```
-The options object in `load` and `transform` is optional, rollup is not currently using this object but may extend these hooks with additional metadata in the future.
+L'objet `options` dans `load` et `transform` est optionnel, rollup n'utilise pas actuellement cet objet mais pourrait étendre ces hooks avec des métadonnées supplémentaires dans le futur.
:::tip Note
-Before Vite 2.7, this was informed to plugin hooks with a positional `ssr` param instead of using the `options` object. All major frameworks and plugins are updated but you may find outdated posts using the previous API.
+Avant Vite 2.7, cela était informé aux hooks de plugin avec un paramètre positionnel `ssr` au lieu de l'objet `options`. Tous les principaux frameworks et plugins sont mis à jour mais vous pouvez trouver des articles obsolètes utilisant l'API précédente.
:::
-## SSR Target
+## Cible SSR
-The default target for the SSR build is a node environment, but you can also run the server in a Web Worker. Packages entry resolution is different for each platform. You can configure the target to be Web Worker using the `ssr.target` set to `'webworker'`.
+La cible par défaut pour le build SSR est un environnement node, mais vous pouvez également exécuter le serveur dans un Web Worker. La résolution des entrées des packages est différente pour chaque plateforme. Vous pouvez configurer la cible pour être un Web Worker en définissant `ssr.target` à `'webworker'`.
-## SSR Bundle
+## Bundle SSR
-In some cases like `webworker` runtimes, you might want to bundle your SSR build into a single JavaScript file. You can enable this behavior by setting `ssr.noExternal` to `true`. This will do two things:
+Dans certains cas comme les runtimes `webworker`, vous souhaiterez peut-être regrouper votre build SSR en un seul fichier JavaScript. Vous pouvez activer ce comportement en définissant `ssr.noExternal` à `true`. Cela fera deux choses :
-- Treat all dependencies as `noExternal`
-- Throw an error if any Node.js built-ins are imported
+- Traiter toutes les dépendances comme `noExternal`
+- Lancer une erreur si des built-ins Node.js sont importés
-## SSR Resolve Conditions
+## Conditions de résolution SSR
-By default package entry resolution will use the conditions set in [`resolve.conditions`](../config/shared-options.md#resolve-conditions) for the SSR build. You can use [`ssr.resolve.conditions`](../config/ssr-options.md#ssr-resolve-conditions) and [`ssr.resolve.externalConditions`](../config/ssr-options.md#ssr-resolve-externalconditions) to customize this behavior.
+La résolution des entrées des packages utilisera par défaut les conditions définies dans [`resolve.conditions`](../config/shared-options.md#resolve-conditions) pour le build SSR. Vous pouvez utiliser [`ssr.resolve.conditions`](../config/ssr-options.md#ssr-resolve-conditions) et [`ssr.resolve.externalConditions`](../config/ssr-options.md#ssr-resolve-externalconditions) pour personnaliser ce comportement.
-## Vite CLI
+## CLI Vite
-The CLI commands `$ vite dev` and `$ vite preview` can also be used for SSR apps. You can add your SSR middlewares to the development server with [`configureServer`](/guide/api-plugin#configureserver) and to the preview server with [`configurePreviewServer`](/guide/api-plugin#configurepreviewserver).
+Les commandes CLI `$ vite dev` et `$ vite preview` peuvent également être utilisées pour les applications SSR. Vous pouvez ajouter vos middlewares SSR au serveur de développement avec [`configureServer`](/guide/api-plugin#configureserver) et au serveur de prévisualisation avec [`configurePreviewServer`](/guide/api-plugin#configurepreviewserver).
:::tip Note
-Use a post hook so that your SSR middleware runs _after_ Vite's middlewares.
+Utilisez un hook post pour que votre middleware SSR s'exécute _après_ les middlewares de Vite.
:::
diff --git a/docs/guide/static-deploy.md b/docs/guide/static-deploy.md
index d437c4b..d423a48 100644
--- a/docs/guide/static-deploy.md
+++ b/docs/guide/static-deploy.md
@@ -1,10 +1,10 @@
-# Deploying a Static Site
+# Déploiement d'un site statique
-The following guides are based on some shared assumptions:
+Les guides suivants partent d'hypothèses communes :
-- You are using the default build output location (`dist`). This location [can be changed using `build.outDir`](/config/build-options.md#build-outdir), and you can extrapolate instructions from these guides in that case.
-- You are using npm. You can use equivalent commands to run the scripts if you are using Yarn or other package managers.
-- Vite is installed as a local dev dependency in your project, and you have setup the following npm scripts:
+- Vous utilisez l'emplacement de destination de build par défaut (`dist`). Cet emplacement [peut être modifié en utilisant `build.outDir`](/config/build-options.md#build-outdir), et vous pouvez extrapoler les instructions de ces guides dans ce cas.
+- Vous utilisez npm. Vous pouvez utiliser des commandes équivalentes pour exécuter les scripts si vous utilisez Yarn ou d'autres gestionnaires de paquets.
+- Vite est installé en tant que dépendance de développement locale dans votre projet, et vous avez configuré les scripts npm suivants :
```json [package.json]
{
@@ -15,33 +15,33 @@ The following guides are based on some shared assumptions:
}
```
-It is important to note that `vite preview` is intended for previewing the build locally and not meant as a production server.
+Il est important de noter que `vite preview` est destiné à prévisualiser le build localement et n'est pas conçu pour être un serveur de production.
-::: tip NOTE
-These guides provide instructions for performing a static deployment of your Vite site. Vite also supports Server Side Rendering. SSR refers to front-end frameworks that support running the same application in Node.js, pre-rendering it to HTML, and finally hydrating it on the client. Check out the [SSR Guide](./ssr) to learn about this feature. On the other hand, if you are looking for integration with traditional server-side frameworks, check out the [Backend Integration guide](./backend-integration) instead.
+::: tip REMARQUE
+Ces guides fournissent des instructions pour effectuer un déploiement statique de votre site Vite. Vite prend également en charge le Server Side Rendering (SSR). Le SSR fait référence aux frameworks frontend qui permettent d'exécuter la même application dans Node.js, de la pré-rendre en HTML, puis de l'hydrater côté client. Consultez le [Guide SSR](./ssr) pour en savoir plus sur cette fonctionnalité. D'autre part, si vous recherchez une intégration avec des frameworks serveur traditionnels, consultez plutôt le [guide d'intégration backend](./backend-integration).
:::
-## Building the App
+## Construire l'application
-You may run `npm run build` command to build the app.
+Vous pouvez exécuter la commande `npm run build` pour construire l'application.
```bash
$ npm run build
```
-By default, the build output will be placed at `dist`. You may deploy this `dist` folder to any of your preferred platforms.
+Par défaut, la sortie du build sera placée dans le dossier `dist`. Vous pouvez déployer ce dossier `dist` sur n'importe quelle plateforme de votre choix.
-### Testing the App Locally
+### Tester l'application localement
-Once you've built the app, you may test it locally by running `npm run preview` command.
+Une fois que vous avez construit l'application, vous pouvez la tester localement en exécutant la commande `npm run preview`.
```bash
$ npm run preview
```
-The `vite preview` command will boot up a local static web server that serves the files from `dist` at `http://localhost:4173`. It's an easy way to check if the production build looks OK in your local environment.
+La commande `vite preview` lancera un serveur web statique local qui sert les fichiers de `dist` à l'adresse `http://localhost:4173`. C'est un moyen simple de vérifier si le build de production semble correct dans votre environnement local.
-You may configure the port of the server by passing the `--port` flag as an argument.
+Vous pouvez configurer le port du serveur en passant l'argument `--port`.
```json [package.json]
{
@@ -51,29 +51,29 @@ You may configure the port of the server by passing the `--port` flag as an argu
}
```
-Now the `preview` command will launch the server at `http://localhost:8080`.
+Dorénavant, la commande `preview` lancera le serveur à l'adresse `http://localhost:8080`.
## GitHub Pages
-1. Set the correct `base` in `vite.config.js`.
+1. Définissez correctement `base` dans `vite.config.js`.
- If you are deploying to `https://.github.io/`, or to a custom domain through GitHub Pages (eg. `www.example.com`), set `base` to `'/'`. Alternatively, you can remove `base` from the configuration, as it defaults to `'/'`.
+ Si vous déployez vers `https://.github.io/`, ou vers un domaine personnalisé via GitHub Pages (par exemple `www.example.com`), définissez `base` à `'/'`. Comme alternative, vous pouvez supprimer `base` de la configuration, car sa valeur par défaut est `'/'`.
- If you are deploying to `https://.github.io//` (eg. your repository is at `https://github.com//`), then set `base` to `'//'`.
+ Si vous déployez vers `https://.github.io//` (par exemple, votre dépôt est à `https://github.com//`), alors définissez `base` à `'//'`.
-2. Go to your GitHub Pages configuration in the repository settings page and choose the source of deployment as "GitHub Actions", this will lead you to create a workflow that builds and deploys your project, a sample workflow that installs dependencies and builds using npm is provided:
+2. Accédez à la configuration de GitHub Pages dans la page des paramètres du dépôt et choisissez "GitHub Actions" comme source de déploiement. Cela vous amènera à créer un workflow qui va construire et déployer votre projet. Un exemple de workflow qui installe les dépendances et build en utilisant npm est fourni :
<<< ./static-deploy-github-pages.yaml#content
-## GitLab Pages and GitLab CI
+## GitLab Pages et GitLab CI
-1. Set the correct `base` in `vite.config.js`.
+1. Définissez correctement `base` dans `vite.config.js`.
- If you are deploying to `https://.gitlab.io/`, you can omit `base` as it defaults to `'/'`.
+ Si vous déployez vers `https://.gitlab.io/`, vous pouvez omettre `base` car sa valeur par défaut est `'/'`.
- If you are deploying to `https://.gitlab.io//`, for example your repository is at `https://gitlab.com//`, then set `base` to `'//'`.
+ Si vous déployez vers `https://.gitlab.io//`, par exemple si votre dépôt est à `https://gitlab.com//`, alors définissez `base` à `'//'`.
-2. Create a file called `.gitlab-ci.yml` in the root of your project with the content below. This will build and deploy your site whenever you make changes to your content:
+2. Créez un fichier nommé `.gitlab-ci.yml` à la racine de votre projet avec le contenu ci-dessous. Cela construira et déploiera votre site chaque fois que vous apporterez des modifications à votre contenu :
```yaml [.gitlab-ci.yml]
image: node:lts
@@ -101,45 +101,45 @@ Now the `preview` command will launch the server at `http://localhost:8080`.
### Netlify CLI
-1. Install the [Netlify CLI](https://cli.netlify.com/).
-2. Create a new site using `ntl init`.
-3. Deploy using `ntl deploy`.
+1. Installez la [Netlify CLI](https://cli.netlify.com/).
+2. Créez un nouveau site en utilisant `ntl init`.
+3. Déployez en utilisant `ntl deploy`.
```bash
-# Install the Netlify CLI
+# Installer la Netlify CLI
$ npm install -g netlify-cli
-# Create a new site in Netlify
+# Créer un nouveau site dans Netlify
$ ntl init
-# Deploy to a unique preview URL
+# Déployer vers une URL de prévisualisation unique
$ ntl deploy
```
-The Netlify CLI will share with you a preview URL to inspect. When you are ready to go into production, use the `prod` flag:
+La CLI Netlify partagera avec vous une URL de prévisualisation à inspecter. Lorsque vous êtes prêt à passer en production, utilisez le flag `prod` :
```bash
-# Deploy the site into production
+# Déployer le site en production
$ ntl deploy --prod
```
-### Netlify with Git
+### Netlify avec Git
-1. Push your code to a git repository (GitHub, GitLab, BitBucket, Azure DevOps).
-2. [Import the project](https://app.netlify.com/start) to Netlify.
-3. Choose the branch, output directory, and set up environment variables if applicable.
-4. Click on **Deploy**.
-5. Your Vite app is deployed!
+1. Poussez votre code vers un dépôt git (GitHub, GitLab, BitBucket, Azure DevOps).
+2. [Importez le projet](https://app.netlify.com/start) dans Netlify.
+3. Choisissez la branche, le répertoire de sortie et configurez les variables d'environnement si nécessaire.
+4. Cliquez sur **Deploy**.
+5. Votre application Vite est déployée !
-After your project has been imported and deployed, all subsequent pushes to branches other than the production branch along with pull requests will generate [Preview Deployments](https://docs.netlify.com/site-deploys/deploy-previews/), and all changes made to the Production Branch (commonly “main”) will result in a [Production Deployment](https://docs.netlify.com/site-deploys/overview/#definitions).
+Après l'importation et le déploiement de votre projet, tous les push ultérieurs vers des branches autres que la branche de production ainsi que les pull requests généreront des [Déploiements de prévisualisation](https://docs.netlify.com/site-deploys/deploy-previews/), et tous les changements apportés à la branche de production (généralement "main") entraîneront un [Déploiement de production](https://docs.netlify.com/site-deploys/overview/#definitions).
## Vercel
### Vercel CLI
-1. Install the [Vercel CLI](https://vercel.com/cli) and run `vercel` to deploy.
-2. Vercel will detect that you are using Vite and will enable the correct settings for your deployment.
-3. Your application is deployed! (e.g. [vite-vue-template.vercel.app](https://vite-vue-template.vercel.app/))
+1. Installez la [Vercel CLI](https://vercel.com/cli) et exécutez `vercel` pour déployer.
+2. Vercel détectera que vous utilisez Vite et activera les paramètres corrects pour votre déploiement.
+3. Votre application est déployée ! (par exemple [vite-vue-template.vercel.app](https://vite-vue-template.vercel.app/))
```bash
$ npm i -g vercel
@@ -149,61 +149,61 @@ Vercel CLI
- To deploy, `cd vite` and run `vercel`.
```
-### Vercel for Git
+### Vercel pour Git
-1. Push your code to your git repository (GitHub, GitLab, Bitbucket).
-2. [Import your Vite project](https://vercel.com/new) into Vercel.
-3. Vercel will detect that you are using Vite and will enable the correct settings for your deployment.
-4. Your application is deployed! (e.g. [vite-vue-template.vercel.app](https://vite-vue-template.vercel.app/))
+1. Poussez votre code vers votre dépôt git (GitHub, GitLab, Bitbucket).
+2. [Importez votre projet Vite](https://vercel.com/new) dans Vercel.
+3. Vercel détectera que vous utilisez Vite et activera les paramètres corrects pour votre déploiement.
+4. Votre application est déployée ! (par exemple [vite-vue-template.vercel.app](https://vite-vue-template.vercel.app/))
-After your project has been imported and deployed, all subsequent pushes to branches will generate [Preview Deployments](https://vercel.com/docs/concepts/deployments/environments#preview), and all changes made to the Production Branch (commonly “main”) will result in a [Production Deployment](https://vercel.com/docs/concepts/deployments/environments#production).
+Après l'importation et le déploiement de votre projet, tous les push ultérieurs vers des branches généreront des [Déploiements de prévisualisation](https://vercel.com/docs/concepts/deployments/environments#preview), et tous les changements apportés à la branche de production (généralement "main") entraîneront un [Déploiement de production](https://vercel.com/docs/concepts/deployments/environments#production).
-Learn more about Vercel’s [Git Integration](https://vercel.com/docs/concepts/git).
+En savoir plus sur l'[Intégration Git](https://vercel.com/docs/concepts/git) de Vercel.
## Cloudflare Pages
### Cloudflare Pages via Wrangler
-1. Install [Wrangler CLI](https://developers.cloudflare.com/workers/wrangler/get-started/).
-2. Authenticate Wrangler with your Cloudflare account using `wrangler login`.
-3. Run your build command.
-4. Deploy using `npx wrangler pages deploy dist`.
+1. Installez [Wrangler CLI](https://developers.cloudflare.com/workers/wrangler/get-started/).
+2. Authentifiez Wrangler avec votre compte Cloudflare en utilisant `wrangler login`.
+3. Exécutez votre commande de build.
+4. Déployez en utilisant `npx wrangler pages deploy dist`.
```bash
-# Install Wrangler CLI
+# Installer Wrangler CLI
$ npm install -g wrangler
-# Login to Cloudflare account from CLI
+# Se connecter au compte Cloudflare depuis la CLI
$ wrangler login
-# Run your build command
+# Exécuter votre commande de build
$ npm run build
-# Create new deployment
+# Créer un nouveau déploiement
$ npx wrangler pages deploy dist
```
-After your assets are uploaded, Wrangler will give you a preview URL to inspect your site. When you log into the Cloudflare Pages dashboard, you will see your new project.
+Après le téléchargement de vos ressources, Wrangler vous donnera une URL de prévisualisation pour inspecter votre site. Lorsque vous vous connecterez au tableau de bord Cloudflare Pages, vous verrez votre nouveau projet.
-### Cloudflare Pages with Git
+### Cloudflare Pages avec Git
-1. Push your code to your git repository (GitHub, GitLab).
-2. Log in to the Cloudflare dashboard and select your account in **Account Home** > **Pages**.
-3. Select **Create a new Project** and the **Connect Git** option.
-4. Select the git project you want to deploy and click **Begin setup**
-5. Select the corresponding framework preset in the build setting depending on the Vite framework you have selected.
-6. Then save and deploy!
-7. Your application is deployed! (e.g `https://.pages.dev/`)
+1. Poussez votre code vers votre dépôt git (GitHub, GitLab).
+2. Connectez-vous au tableau de bord Cloudflare et sélectionnez votre compte dans **Account Home** > **Pages**.
+3. Sélectionnez **Create a new Project** et l'option **Connect Git**.
+4. Sélectionnez le projet git que vous souhaitez déployer et cliquez sur **Begin setup**
+5. Sélectionnez le preset de framework correspondant dans les paramètres de build selon le framework Vite que vous avez choisi.
+6. Ensuite, sauvegardez et déployez !
+7. Votre application est déployée ! (par exemple `https://.pages.dev/`)
-After your project has been imported and deployed, all subsequent pushes to branches will generate [Preview Deployments](https://developers.cloudflare.com/pages/platform/preview-deployments/) unless specified not to in your [branch build controls](https://developers.cloudflare.com/pages/platform/branch-build-controls/). All changes to the Production Branch (commonly “main”) will result in a Production Deployment.
+Après l'importation et le déploiement de votre projet, tous les push ultérieurs vers des branches généreront des [Déploiements de prévisualisation](https://developers.cloudflare.com/pages/platform/preview-deployments/) sauf indication contraire dans vos [contrôles de build de branche](https://developers.cloudflare.com/pages/platform/branch-build-controls/). Tous les changements apportés à la branche de production (généralement "main") entraîneront un déploiement de production.
-You can also add custom domains and handle custom build settings on Pages. Learn more about [Cloudflare Pages Git Integration](https://developers.cloudflare.com/pages/get-started/#manage-your-site).
+Vous pouvez également ajouter des domaines personnalisés et gérer des paramètres de build personnalisés sur Pages. En savoir plus sur [l'intégration Git de Cloudflare Pages](https://developers.cloudflare.com/pages/get-started/#manage-your-site).
## Google Firebase
-1. Make sure you have [firebase-tools](https://www.npmjs.com/package/firebase-tools) installed.
+1. Assurez-vous d'avoir [firebase-tools](https://www.npmjs.com/package/firebase-tools) installé.
-2. Create `firebase.json` and `.firebaserc` at the root of your project with the following content:
+2. Créez les fichiers `firebase.json` et `.firebaserc` à la racine de votre projet avec le contenu suivant :
```json [firebase.json]
{
@@ -228,77 +228,77 @@ You can also add custom domains and handle custom build settings on Pages. Learn
}
```
-3. After running `npm run build`, deploy using the command `firebase deploy`.
+3. Après avoir exécuté `npm run build`, déployez en utilisant la commande `firebase deploy`.
## Surge
-1. First install [surge](https://www.npmjs.com/package/surge), if you haven’t already.
+1. D'abord, installez [surge](https://www.npmjs.com/package/surge) si vous ne l'avez pas déjà fait.
-2. Run `npm run build`.
+2. Exécutez `npm run build`.
-3. Deploy to surge by typing `surge dist`.
+3. Déployez sur surge en tapant `surge dist`.
-You can also deploy to a [custom domain](http://surge.sh/help/adding-a-custom-domain) by adding `surge dist yourdomain.com`.
+Vous pouvez également déployer sur un [domaine personnalisé](http://surge.sh/help/adding-a-custom-domain) en ajoutant `surge dist yourdomain.com`.
## Azure Static Web Apps
-You can quickly deploy your Vite app with Microsoft Azure [Static Web Apps](https://aka.ms/staticwebapps) service. You need:
+Vous pouvez rapidement déployer votre application Vite avec le service [Static Web Apps](https://aka.ms/staticwebapps) de Microsoft Azure. Vous avez besoin de :
-- An Azure account and a subscription key. You can create a [free Azure account here](https://azure.microsoft.com/free).
-- Your app code pushed to [GitHub](https://github.com).
-- The [SWA Extension](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azurestaticwebapps) in [Visual Studio Code](https://code.visualstudio.com).
+- Un compte Azure et une clé d'abonnement. Vous pouvez créer un [compte Azure gratuit ici](https://azure.microsoft.com/free).
+- Votre code d'application poussé sur [GitHub](https://github.com).
+- L'[extension SWA](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azurestaticwebapps) dans [Visual Studio Code](https://code.visualstudio.com).
-Install the extension in VS Code and navigate to your app root. Open the Static Web Apps extension, sign in to Azure, and click the '+' sign to create a new Static Web App. You will be prompted to designate which subscription key to use.
+Installez l'extension dans VS Code et naviguez jusqu'à la racine de votre application. Ouvrez l'extension Static Web Apps, connectez-vous à Azure et cliquez sur le signe '+' pour créer une nouvelle Static Web App. Vous serez invité à désigner quelle clé d'abonnement utiliser.
-Follow the wizard started by the extension to give your app a name, choose a framework preset, and designate the app root (usually `/`) and built file location `/dist`. The wizard will run and will create a GitHub action in your repo in a `.github` folder.
+Suivez l'assistant lancé par l'extension pour donner un nom à votre application, choisir un preset de framework et désigner la racine de l'application (généralement `/`) et l'emplacement des fichiers construits `/dist`. L'assistant créera une GitHub Action dans votre dépôt dans un dossier `.github`.
-The action will work to deploy your app (watch its progress in your repo's Actions tab) and, when successfully completed, you can view your app in the address provided in the extension's progress window by clicking the 'Browse Website' button that appears when the GitHub action has run.
+L'action travaillera pour déployer votre application (regardez sa progression dans l'onglet Actions de votre dépôt) et, une fois terminée avec succès, vous pourrez voir votre application à l'adresse fournie dans la fenêtre de progression de l'extension en cliquant sur le bouton 'Browse Website' qui apparaît lorsque l'action GitHub a été exécutée.
## Render
-You can deploy your Vite app as a Static Site on [Render](https://render.com/).
+Vous pouvez déployer votre application Vite en tant que site statique sur [Render](https://render.com/).
-1. Create a [Render account](https://dashboard.render.com/register).
+1. Créez un [compte Render](https://dashboard.render.com/register).
-2. In the [Dashboard](https://dashboard.render.com/), click the **New** button and select **Static Site**.
+2. Dans le [Dashboard](https://dashboard.render.com/), cliquez sur le bouton **New** et sélectionnez **Static Site**.
-3. Connect your GitHub/GitLab account or use a public repository.
+3. Connectez votre compte GitHub/GitLab ou utilisez un dépôt public.
-4. Specify a project name and branch.
+4. Spécifiez un nom de projet et une branche.
- - **Build Command**: `npm install && npm run build`
- - **Publish Directory**: `dist`
+ - **Build Command** : `npm install && npm run build`
+ - **Publish Directory** : `dist`
-5. Click **Create Static Site**.
+5. Cliquez sur **Create Static Site**.
- Your app should be deployed at `https://.onrender.com/`.
+ Votre application devrait être déployée à l'adresse `https://.onrender.com/`.
-By default, any new commit pushed to the specified branch will automatically trigger a new deployment. [Auto-Deploy](https://render.com/docs/deploys#toggling-auto-deploy-for-a-service) can be configured in the project settings.
+Par défaut, tout nouveau commit poussé vers la branche spécifiée déclenchera automatiquement un nouveau déploiement. [Auto-Deploy](https://render.com/docs/deploys#toggling-auto-deploy-for-a-service) peut être configuré dans les paramètres du projet.
-You can also add a [custom domain](https://render.com/docs/custom-domains) to your project.
+Vous pouvez également ajouter un [domaine personnalisé](https://render.com/docs/custom-domains) à votre projet.
## Flightcontrol
-Deploy your static site using [Flightcontrol](https://www.flightcontrol.dev/?ref=docs-vite) by following these [instructions](https://www.flightcontrol.dev/docs/reference/examples/vite?ref=docs-vite).
+Déployez votre site statique en utilisant [Flightcontrol](https://www.flightcontrol.dev/?ref=docs-vite) en suivant ces [instructions](https://www.flightcontrol.dev/docs/reference/examples/vite?ref=docs-vite).
## Kinsta Static Site Hosting
-Deploy your static site using [Kinsta](https://kinsta.com/static-site-hosting/) by following these [instructions](https://kinsta.com/docs/react-vite-example/).
+Déployez votre site statique en utilisant [Kinsta](https://kinsta.com/static-site-hosting/) en suivant ces [instructions](https://kinsta.com/docs/react-vite-example/).
## xmit Static Site Hosting
-Deploy your static site using [xmit](https://xmit.co) by following this [guide](https://xmit.dev/posts/vite-quickstart/).
+Déployez votre site statique en utilisant [xmit](https://xmit.co) en suivant ce [guide](https://xmit.dev/posts/vite-quickstart/).
diff --git a/docs/guide/troubleshooting.md b/docs/guide/troubleshooting.md
index c024a77..4614fcd 100644
--- a/docs/guide/troubleshooting.md
+++ b/docs/guide/troubleshooting.md
@@ -1,191 +1,190 @@
-# Troubleshooting
+# Résolution des problèmes
-See [Rollup's troubleshooting guide](https://rollupjs.org/troubleshooting/) for more information too.
+Consultez également le [guide de résolution des problèmes de Rollup](https://rollupjs.org/troubleshooting/) pour plus d'informations.
-If the suggestions here don't work, please try posting questions on [GitHub Discussions](https://github.com/vitejs/vite/discussions) or in the `#help` channel of [Vite Land Discord](https://chat.vite.dev).
+Si les suggestions présentées ici ne fonctionnent pas, essayez de poser vos questions sur [GitHub Discussions](https://github.com/vitejs/vite/discussions) ou dans le canal `#help` du [Discord Vite Land](https://chat.vite.dev).
## CJS
-### Vite CJS Node API deprecated
+### API Node CJS de Vite dépréciée
-The CJS build of Vite's Node API is deprecated and will be removed in Vite 6. See the [GitHub discussion](https://github.com/vitejs/vite/discussions/13928) for more context. You should update your files or frameworks to import the ESM build of Vite instead.
+La version CJS de l'API Node de Vite est dépréciée et sera supprimée dans Vite 6. Consultez la [discussion GitHub](https://github.com/vitejs/vite/discussions/13928) pour plus de contexte. Vous devriez mettre à jour vos fichiers ou frameworks pour importer plutôt la version ESM de Vite.
-In a basic Vite project, make sure:
+Dans un projet Vite de base, assurez-vous que :
-1. The `vite.config.js` file content is using the ESM syntax.
-2. The closest `package.json` file has `"type": "module"`, or use the `.mjs`/`.mts` extension, e.g. `vite.config.mjs` or `vite.config.mts`.
+1. Le contenu du fichier `vite.config.js` utilise la syntaxe ESM.
+2. Le fichier `package.json` le plus proche contient `"type": "module"`, ou utilisez l'extension `.mjs`/`.mts`, par exemple `vite.config.mjs` ou `vite.config.mts`.
-For other projects, there are a few general approaches:
+Pour les autres projets, il existe quelques approches générales :
-- **Configure ESM as default, opt-in to CJS if needed:** Add `"type": "module"` in the project `package.json`. All `*.js` files are now interpreted as ESM and need to use the ESM syntax. You can rename a file with the `.cjs` extension to keep using CJS instead.
-- **Keep CJS as default, opt-in to ESM if needed:** If the project `package.json` does not have `"type": "module"`, all `*.js` files are interpreted as CJS. You can rename a file with the `.mjs` extension to use ESM instead.
-- **Dynamically import Vite:** If you need to keep using CJS, you can dynamically import Vite using `import('vite')` instead. This requires your code to be written in an `async` context, but should still be manageable as Vite's API is mostly asynchronous.
+- **Configurer ESM par défaut, avec opt-in pour CJS si nécessaire :** Ajoutez `"type": "module"` dans le `package.json` du projet. Tous les fichiers `*.js` sont désormais interprétés comme ESM et doivent utiliser la syntaxe ESM. Vous pouvez renommer un fichier avec l'extension `.cjs` pour continuer à utiliser CJS.
+- **Conserver CJS par défaut, avec opt-in pour ESM si nécessaire :** Si le `package.json` du projet ne contient pas `"type": "module"`, tous les fichiers `*.js` sont interprétés comme CJS. Vous pouvez renommer un fichier avec l'extension `.mjs` pour utiliser ESM à la place.
+- **Importer Vite dynamiquement :** Si vous devez continuer à utiliser CJS, vous pouvez importer Vite dynamiquement en utilisant `import('vite')`. Cela nécessite que votre code soit écrit dans un contexte `async`, mais cela devrait rester gérable car l'API de Vite est principalement asynchrone.
-If you're unsure where the warning is coming from, you can run your script with the `VITE_CJS_TRACE=true` flag to log the stack trace:
+Si vous ne savez pas d'où provient l'avertissement, vous pouvez exécuter votre script avec le flag `VITE_CJS_TRACE=true` pour enregistrer la trace de la pile :
```bash
VITE_CJS_TRACE=true vite dev
```
-If you'd like to temporarily ignore the warning, you can run your script with the `VITE_CJS_IGNORE_WARNING=true` flag:
+Si vous souhaitez ignorer temporairement l'avertissement, vous pouvez exécuter votre script avec le flag `VITE_CJS_IGNORE_WARNING=true` :
```bash
VITE_CJS_IGNORE_WARNING=true vite dev
```
-Note that postcss config files do not support ESM + TypeScript (`.mts` or `.ts` in `"type": "module"`) yet. If you have postcss configs with `.ts` and added `"type": "module"` to package.json, you'll also need to rename the postcss config to use `.cts`.
+Notez que les fichiers de configuration postcss ne prennent pas encore en charge ESM + TypeScript (`.mts` ou `.ts` dans `"type": "module"`). Si vous avez des configurations postcss avec `.ts` et que vous avez ajouté `"type": "module"` au package.json, vous devrez également renommer la configuration postcss pour utiliser `.cts`.
## CLI
### `Error: Cannot find module 'C:\foo\bar&baz\vite\bin\vite.js'`
-The path to your project folder may include `&`, which doesn't work with `npm` on Windows ([npm/cmd-shim#45](https://github.com/npm/cmd-shim/issues/45)).
+Le chemin vers votre dossier de projet peut contenir `&`, ce qui ne fonctionne pas avec `npm` sur Windows ([npm/cmd-shim#45](https://github.com/npm/cmd-shim/issues/45)).
-You will need to either:
+Vous devrez soit :
-- Switch to another package manager (e.g. `pnpm`, `yarn`)
-- Remove `&` from the path to your project
+- Passer à un autre gestionnaire de paquets (par exemple `pnpm`, `yarn`)
+- Supprimer `&` du chemin de votre projet
-## Config
+## Configuration
-### This package is ESM only
+### Ce package est ESM uniquement
-When importing a ESM only package by `require`, the following error happens.
+Lors de l'importation d'un package ESM uniquement par `require`, l'erreur suivante se produit.
> Failed to resolve "foo". This package is ESM only but it was tried to load by `require`.
> Error [ERR_REQUIRE_ESM]: require() of ES Module /path/to/dependency.js from /path/to/vite.config.js not supported.
> Instead change the require of index.js in /path/to/vite.config.js to a dynamic import() which is available in all CommonJS modules.
-In Node.js <=22, ESM files cannot be loaded by [`require`](https://nodejs.org/docs/latest-v22.x/api/esm.html#require) by default.
+Dans Node.js <=22, les fichiers ESM ne peuvent pas être chargés par [`require`](https://nodejs.org/docs/latest-v22.x/api/esm.html#require) par défaut.
-While it may work using [`--experimental-require-module`](https://nodejs.org/docs/latest-v22.x/api/modules.html#loading-ecmascript-modules-using-require), or Node.js >22, or in other runtimes, we still recommend converting your config to ESM by either:
+Bien que cela puisse fonctionner en utilisant [`--experimental-require-module`](https://nodejs.org/docs/latest-v22.x/api/modules.html#loading-ecmascript-modules-using-require), ou Node.js >22, ou dans d'autres environnements d'exécution, nous recommandons toujours de convertir votre configuration en ESM en :
-- adding `"type": "module"` to the nearest `package.json`
-- renaming `vite.config.js`/`vite.config.ts` to `vite.config.mjs`/`vite.config.mts`
+- ajoutant `"type": "module"` au `package.json` le plus proche
+- renommant `vite.config.js`/`vite.config.ts` en `vite.config.mjs`/`vite.config.mts`
-## Dev Server
+## Serveur de développement
-### Requests are stalled forever
+### Les requêtes sont bloquées indéfiniment
-If you are using Linux, file descriptor limits and inotify limits may be causing the issue. As Vite does not bundle most of the files, browsers may request many files which require many file descriptors, going over the limit.
+Si vous utilisez Linux, les limites de descripteurs de fichiers et les limites d'inotify pourraient être à l'origine du problème. Comme Vite ne regroupe pas la plupart des fichiers, les navigateurs peuvent demander de nombreux fichiers qui nécessitent de nombreux descripteurs de fichiers, dépassant la limite.
-To solve this:
+Pour résoudre ce problème :
-- Increase file descriptor limit by `ulimit`
+- Augmentez la limite de descripteurs de fichiers avec `ulimit`
```shell
- # Check current limit
+ # Vérifiez la limite actuelle
$ ulimit -Sn
- # Change limit (temporary)
- $ ulimit -Sn 10000 # You might need to change the hard limit too
- # Restart your browser
+ # Changez la limite (temporaire)
+ $ ulimit -Sn 10000 # Vous pourriez avoir besoin de changer aussi la limite dure
+ # Redémarrez votre navigateur
```
-- Increase the following inotify related limits by `sysctl`
+- Augmentez les limites d'inotify suivantes avec `sysctl`
```shell
- # Check current limits
+ # Vérifiez les limites actuelles
$ sysctl fs.inotify
- # Change limits (temporary)
+ # Changez les limites (temporaire)
$ sudo sysctl fs.inotify.max_queued_events=16384
$ sudo sysctl fs.inotify.max_user_instances=8192
$ sudo sysctl fs.inotify.max_user_watches=524288
```
-If the above steps don't work, you can try adding `DefaultLimitNOFILE=65536` as an un-commented config to the following files:
+Si les étapes ci-dessus ne fonctionnent pas, vous pouvez essayer d'ajouter `DefaultLimitNOFILE=65536` comme configuration non commentée aux fichiers suivants :
- /etc/systemd/system.conf
- /etc/systemd/user.conf
-For Ubuntu Linux, you may need to add the line `* - nofile 65536` to the file `/etc/security/limits.conf` instead of updating systemd config files.
+Pour Ubuntu Linux, vous devrez peut-être ajouter la ligne `* - nofile 65536` au fichier `/etc/security/limits.conf` au lieu de mettre à jour les fichiers de configuration systemd.
-Note that these settings persist but a **restart is required**.
+Notez que ces paramètres sont persistants mais un **redémarrage est nécessaire**.
-Alternatively, if the server is running inside a VS Code devcontainer, the request may appear to be stalled. To fix this issue, see
-[Dev Containers / VS Code Port Forwarding](#dev-containers-vs-code-port-forwarding).
+Sinon, si le serveur s'exécute à l'intérieur d'un Dev Container VS Code, la requêtre peut sembler bloquée. Pour corriger ce problème, voir [Dev Containers / Redirection de ports dans VS Code](#dev-containers-vs-code-port-forwarding).
-### Network requests stop loading
+### Les requêtes réseau arretent de se charger
-When using a self-signed SSL certificate, Chrome ignores all caching directives and reloads the content. Vite relies on these caching directives.
+Lorsque vous utilisez un certificat SSL auto-signé, Chrome ignore toutes les directives de mise en cache et recharge le contenu. Vite s'appuie sur ces directives de mise en cache.
-To resolve the problem use a trusted SSL cert.
+Pour résoudre le problème, utilisez un certificat SSL de confiance.
-See: [Cache problems](https://helpx.adobe.com/mt/experience-manager/kb/cache-problems-on-chrome-with-SSL-certificate-errors.html), [Chrome issue](https://bugs.chromium.org/p/chromium/issues/detail?id=110649#c8)
+Voir : [Problèmes de cache](https://helpx.adobe.com/mt/experience-manager/kb/cache-problems-on-chrome-with-SSL-certificate-errors.html), [Problème Chrome](https://bugs.chromium.org/p/chromium/issues/detail?id=110649#c8)
#### macOS
-You can install a trusted cert via the CLI with this command:
+Vous pouvez installer un certificat de confiance via la ligne de commande avec cette commande :
```
security add-trusted-cert -d -r trustRoot -k ~/Library/Keychains/login.keychain-db your-cert.cer
```
-Or, by importing it into the Keychain Access app and updating the trust of your cert to "Always Trust."
+Ou en l'important dans l'application Keychain Access et en mettant à jour la confiance de votre certificat à "Toujours approuver".
### 431 Request Header Fields Too Large
-When the server / WebSocket server receives a large HTTP header, the request will be dropped and the following warning will be shown.
+Lorsque le serveur / serveur WebSocket reçoit un en-tête HTTP volumineux, la requête sera abandonnée et l'avertissement suivant s'affichera.
-> Server responded with status code 431. See https://vite.dev/guide/troubleshooting.html#_431-request-header-fields-too-large.
+> Server responded with status code 431. See https://fr.vite.dev/guide/troubleshooting.html#_431-request-header-fields-too-large.
-This is because Node.js limits request header size to mitigate [CVE-2018-12121](https://www.cve.org/CVERecord?id=CVE-2018-12121).
+Cela est dû au fait que Node.js limite la taille des en-têtes de requête pour mitiger [CVE-2018-12121](https://www.cve.org/CVERecord?id=CVE-2018-12121).
-To avoid this, try to reduce your request header size. For example, if the cookie is long, delete it. Or you can use [`--max-http-header-size`](https://nodejs.org/api/cli.html#--max-http-header-sizesize) to change max header size.
+Pour éviter cela, essayez de réduire la taille de votre en-tête de requête. Par exemple, si le cookie est long, supprimez-le. Ou vous pouvez utiliser [`--max-http-header-size`](https://nodejs.org/api/cli.html#--max-http-header-sizesize) pour modifier la taille maximale de l'en-tête.
-### Dev Containers / VS Code Port Forwarding
+### Dev Containers / Transfert de port VS Code
-If you are using a Dev Container or port forwarding feature in VS Code, you may need to set the [`server.host`](/config/server-options.md#server-host) option to `127.0.0.1` in the config to make it work.
+Si vous utilisez un Dev Container ou la fonctionnalité de transfert de port dans VS Code, vous devrez peut-être définir l'option [`server.host`](/config/server-options.md#server-host) sur `127.0.0.1` dans la configuration pour que cela fonctionne.
-This is because [the port forwarding feature in VS Code does not support IPv6](https://github.com/microsoft/vscode-remote-release/issues/7029).
+C'est parce que [la fonction de transfert de port dans VS Code ne prend pas en charge IPv6](https://github.com/microsoft/vscode-remote-release/issues/7029).
-See [#16522](https://github.com/vitejs/vite/issues/16522) for more details.
+Voir [#16522](https://github.com/vitejs/vite/issues/16522) pour plus de détails.
## HMR
-### Vite detects a file change but the HMR is not working
+### Vite détecte un changement de fichier mais le HMR ne fonctionne pas
-You may be importing a file with a different case. For example, `src/foo.js` exists and `src/bar.js` contains:
+Vous importez peut-être un fichier avec une casse différente. Par exemple, `src/foo.js` existe et `src/bar.js` contient :
```js
-import './Foo.js' // should be './foo.js'
+import './Foo.js' // devrait être './foo.js'
```
-Related issue: [#964](https://github.com/vitejs/vite/issues/964)
+Ticket associé : [#964](https://github.com/vitejs/vite/issues/964)
-### Vite does not detect a file change
+### Vite ne détecte pas un changement de fichier
-If you are running Vite with WSL2, Vite cannot watch file changes in some conditions. See [`server.watch` option](/config/server-options.md#server-watch).
+Si vous exécutez Vite avec WSL2, Vite ne peut pas surveiller les changements de fichiers dans certaines conditions. Voir l'option [`server.watch`](/config/server-options.md#server-watch).
-### A full reload happens instead of HMR
+### Un rechargement complet se produit au lieu du HMR
-If HMR is not handled by Vite or a plugin, a full reload will happen as it's the only way to refresh the state.
+Si le HMR n'est pas géré par Vite ou un plugin, un rechargement complet se produira car c'est la seule façon de rafraîchir l'état.
-If HMR is handled but it is within a circular dependency, a full reload will also happen to recover the execution order. To solve this, try breaking the loop. You can run `vite --debug hmr` to log the circular dependency path if a file change triggered it.
+Si le HMR est géré mais qu'il se trouve dans une dépendance circulaire, un rechargement complet se produira également pour récupérer l'ordre d'exécution. Pour résoudre ce problème, essayez de rompre la boucle. Vous pouvez exécuter `vite --debug hmr` pour enregistrer le chemin de dépendance circulaire si un changement de fichier l'a déclenché.
## Build
-### Built file does not work because of CORS error
+### Le fichier construit ne fonctionne pas à cause d'une erreur CORS
-If the HTML file output was opened with `file` protocol, the scripts won't run with the following error.
+Si le fichier HTML de sortie a été ouvert avec le protocole `file`, les scripts ne s'exécuteront pas avec l'erreur suivante.
> Access to script at 'file:///foo/bar.js' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, isolated-app, chrome-extension, chrome, https, chrome-untrusted.
> Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at file:///foo/bar.js. (Reason: CORS request not http).
-See [Reason: CORS request not HTTP - HTTP | MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS/Errors/CORSRequestNotHttp) for more information about why this happens.
+Voir [Reason: CORS request not HTTP - HTTP | MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS/Errors/CORSRequestNotHttp) pour plus d'informations sur les raisons de ce problème.
-You will need to access the file with `http` protocol. The easiest way to achieve this is to run `npx vite preview`.
+Vous devrez accéder au fichier avec le protocole `http`. La façon la plus simple d'y parvenir est d'exécuter `npx vite preview`.
-## Optimized Dependencies
+## Dépendances optimisées
-### Outdated pre-bundled deps when linking to a local package
+### Dépendances pré-bundlée obsolètes lors de la liaison à un package local
-The hash key used to invalidate optimized dependencies depends on the package lock contents, the patches applied to dependencies, and the options in the Vite config file that affects the bundling of node modules. This means that Vite will detect when a dependency is overridden using a feature as [npm overrides](https://docs.npmjs.com/cli/v9/configuring-npm/package-json#overrides), and re-bundle your dependencies on the next server start. Vite won't invalidate the dependencies when you use a feature like [npm link](https://docs.npmjs.com/cli/v9/commands/npm-link). In case you link or unlink a dependency, you'll need to force re-optimization on the next server start by using `vite --force`. We recommend using overrides instead, which are supported now by every package manager (see also [pnpm overrides](https://pnpm.io/package_json#pnpmoverrides) and [yarn resolutions](https://yarnpkg.com/configuration/manifest/#resolutions)).
+La clef de hash utilisée pour invalider les dépendances optimisées dépend du contenu du verrouillage de package, des correctifs appliqués aux dépendances et des options dans le fichier de configuration Vite qui affectent le regroupement des modules Node. Cela signifie que Vite détectera quand une dépendance est remplacée à l'aide d'une fonctionnalité comme [les remplacements npm](https://docs.npmjs.com/cli/v9/configuring-npm/package-json#overrides), et regroupera à nouveau vos dépendances au prochain démarrage du serveur. Vite n'invalidera pas les dépendances lorsque vous utilisez une fonctionnalité comme [npm link](https://docs.npmjs.com/cli/v9/commands/npm-link). Si vous liez ou déliez une dépendance, vous devrez forcer la réoptimisation au prochain démarrage du serveur en utilisant `vite --force`. Nous vous recommandons d'utiliser des remplacements à la place, qui sont désormais pris en charge par tous les gestionnaires de packages (voir aussi [pnpm overrides](https://pnpm.io/package_json#pnpmoverrides) et [yarn resolutions](https://yarnpkg.com/configuration/manifest/#resolutions)).
-## Performance Bottlenecks
+## Goulets d'étranglement de performance
-If you suffer any application performance bottlenecks resulting in slow load times, you can start the built-in Node.js inspector with your Vite dev server or when building your application to create the CPU profile:
+Si vous rencontrez des goulets d'étranglement de performance dans votre application entraînant des temps de chargement lents, vous pouvez démarrer l'inspecteur Node.js intégré avec votre serveur de développement Vite ou lors de la construction de votre application pour créer le profil CPU :
::: code-group
@@ -199,49 +198,49 @@ vite build --profile
:::
-::: tip Vite Dev Server
-Once your application is opened in the browser, just await finish loading it and then go back to the terminal and press `p` key (will stop the Node.js inspector) then press `q` key to stop the dev server.
+::: tip Serveur de développement Vite
+Une fois votre application ouverte dans le navigateur, attendez simplement qu'elle finisse de se charger, puis retournez au terminal et appuyez sur la touche `p` (cela arrêtera l'inspecteur Node.js), puis appuyez sur la touche `q` pour arrêter le serveur de développement.
:::
-Node.js inspector will generate `vite-profile-0.cpuprofile` in the root folder, go to https://www.speedscope.app/, and upload the CPU profile using the `BROWSE` button to inspect the result.
+L'inspecteur Node.js générera `vite-profile-0.cpuprofile` dans le dossier racine, allez sur https://www.speedscope.app/ et téléchargez le profil CPU à l'aide du bouton `BROWSE` pour examiner le résultat.
-You can install [vite-plugin-inspect](https://github.com/antfu/vite-plugin-inspect), which lets you inspect the intermediate state of Vite plugins and can also help you to identify which plugins or middlewares are the bottleneck in your applications. The plugin can be used in both dev and build modes. Check the readme file for more details.
+Vous pouvez installer [vite-plugin-inspect](https://github.com/antfu/vite-plugin-inspect), qui vous permet d'inspecter l'état intermédiaire des plugins Vite et peut également vous aider à identifier quels plugins ou middlewares sont le goulet d'étranglement dans vos applications. Le plugin peut être utilisé à la fois en mode développement et en mode construction. Consultez le fichier readme pour plus de détails.
-## Others
+## Autres
-### Module externalized for browser compatibility
+### Module externalisé pour la compatibilité avec le navigateur
-When you use a Node.js module in the browser, Vite will output the following warning.
+Lorsque vous utilisez un module Node.js dans le navigateur, Vite affichera l'avertissement suivant.
> Module "fs" has been externalized for browser compatibility. Cannot access "fs.readFile" in client code.
-This is because Vite does not automatically polyfill Node.js modules.
+Cela est dû au fait que Vite ne fournit pas automatiquement de polyfills pour les modules Node.js.
-We recommend avoiding Node.js modules for browser code to reduce the bundle size, although you can add polyfills manually. If the module is imported from a third-party library (that's meant to be used in the browser), it's advised to report the issue to the respective library.
+Nous recommandons d'éviter les modules Node.js pour le code du navigateur afin de réduire la taille du bundle, bien que vous puissiez ajouter manuellement des polyfills. Si le module est importé depuis une bibliothèque tierce (destinée à être utilisée dans le navigateur), il est conseillé de signaler le problème à la bibliothèque concernée.
-### Syntax Error / Type Error happens
+### Une erreur de syntaxe / erreur de type se produit
-Vite cannot handle and does not support code that only runs on non-strict mode (sloppy mode). This is because Vite uses ESM and it is always [strict mode](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode) inside ESM.
+Vite ne peut pas gérer et ne prend pas en charge le code qui ne s'exécute qu'en mode non strict (mode laxiste). Cela est dû au fait que Vite utilise ESM et qu'il est toujours en [mode strict](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode) à l'intérieur des ESM.
-For example, you might see these errors.
+Par exemple, vous pourriez voir ces erreurs.
> [ERROR] With statements cannot be used with the "esm" output format due to strict mode
> TypeError: Cannot create property 'foo' on boolean 'false'
-If these codes are used inside dependencies, you could use [`patch-package`](https://github.com/ds300/patch-package) (or [`yarn patch`](https://yarnpkg.com/cli/patch) or [`pnpm patch`](https://pnpm.io/cli/patch)) for an escape hatch.
+Si ces codes sont utilisés dans des dépendances, vous pouvez utiliser [`patch-package`](https://github.com/ds300/patch-package) (ou [`yarn patch`](https://yarnpkg.com/cli/patch) ou [`pnpm patch`](https://pnpm.io/cli/patch)) comme solution de contournement.
-### Browser extensions
+### Extensions de navigateur
-Some browser extensions (like ad-blockers) may prevent the Vite client from sending requests to the Vite dev server. You may see a white screen without logged errors in this case. Try disabling extensions if you have this issue.
+Certaines extensions de navigateur (comme les bloqueurs de publicités) peuvent empêcher le client Vite d'envoyer des requêtes au serveur de développement Vite. Vous pourriez voir un écran blanc sans erreurs enregistrées dans ce cas. Essayez de désactiver les extensions si vous rencontrez ce problème.
-### Cross drive links on Windows
+### Liens entre lecteurs sur Windows
-If there's a cross drive links in your project on Windows, Vite may not work.
+S'il y a des liens entre lecteurs dans votre projet sur Windows, Vite pourrait ne pas fonctionner.
-An example of cross drive links are:
+Exemples de liens entre lecteurs :
-- a virtual drive linked to a folder by `subst` command
-- a symlink/junction to a different drive by `mklink` command (e.g. Yarn global cache)
+- un lecteur virtuel lié à un dossier par la commande `subst`
+- un lien symbolique/jonction vers un lecteur différent par la commande `mklink` (par exemple, le cache global de Yarn)
-Related issue: [#10802](https://github.com/vitejs/vite/issues/10802)
+Ticket associé : [#10802](https://github.com/vitejs/vite/issues/10802)
diff --git a/docs/guide/using-plugins.md b/docs/guide/using-plugins.md
index b168b11..8109392 100644
--- a/docs/guide/using-plugins.md
+++ b/docs/guide/using-plugins.md
@@ -1,10 +1,10 @@
-# Using Plugins
+# Utilisation des plugins
-Vite can be extended using plugins, which are based on Rollup's well-designed plugin interface with a few extra Vite-specific options. This means that Vite users can rely on the mature ecosystem of Rollup plugins, while also being able to extend the dev server and SSR functionality as needed.
+Vite peut être étendu à l'aide de plugins, qui sont basés sur l'interface bien conçue des plugins Rollup avec quelques options supplémentaires spécifiques à Vite. Cela signifie que les utilisateurs de Vite peuvent s'appuyer sur l'écosystème mature des plugins Rollup, tout en étant capables d'étendre le serveur de développement et les fonctionnalités SSR selon leurs besoins.
-## Adding a Plugin
+## Ajouter un plugin
-To use a plugin, it needs to be added to the `devDependencies` of the project and included in the `plugins` array in the `vite.config.js` config file. For example, to provide support for legacy browsers, the official [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) can be used:
+Pour utiliser un plugin, il doit être ajouté aux `devDependencies` du projet et inclus dans le tableau `plugins` du fichier de configuration `vite.config.js`. Par exemple, pour fournir la prise en charge des navigateurs obsolètes, le plugin officiel [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/main/packages/plugin-legacy) peut être utilisé :
```
$ npm add -D @vitejs/plugin-legacy
@@ -23,27 +23,27 @@ export default defineConfig({
})
```
-`plugins` also accepts presets including several plugins as a single element. This is useful for complex features (like framework integration) that are implemented using several plugins. The array will be flattened internally.
+Le tableau `plugins` accepte également des préconfigurations comprenant plusieurs plugins en tant qu'élément unique. C'est utile pour les fonctionnalités complexes (comme l'intégration de frameworks) qui sont implémentées à l'aide de plusieurs plugins. Le tableau sera aplati de manière interne.
-Falsy plugins will be ignored, which can be used to easily activate or deactivate plugins.
+Les plugins avec une valeur falsy seront ignorés, ce qui permet d'activer ou de désactiver facilement des plugins.
-## Finding Plugins
+## Trouver des plugins
-:::tip NOTE
-Vite aims to provide out-of-the-box support for common web development patterns. Before searching for a Vite or compatible Rollup plugin, check out the [Features Guide](../guide/features.md). A lot of the cases where a plugin would be needed in a Rollup project are already covered in Vite.
+:::tip REMARQUE
+Vite vise à fournir une prise en charge native des modèles courants de développement web. Avant de rechercher un plugin Vite ou un plugin Rollup compatible, consultez le [Guide des fonctionnalités](../guide/features.md). De nombreux cas où un plugin serait nécessaire dans un projet Rollup sont déjà couverts dans Vite.
:::
-Check out the [Plugins section](../plugins/) for information about official plugins. Community plugins are listed in [awesome-vite](https://github.com/vitejs/awesome-vite#plugins).
+Consultez la [section Plugins](../plugins/) pour obtenir des informations sur les plugins officiels. Les plugins communautaires sont répertoriés dans [awesome-vite](https://github.com/vitejs/awesome-vite#plugins).
-You can also find plugins that follow the [recommended conventions](./api-plugin.md#conventions) using a [npm search for vite-plugin](https://www.npmjs.com/search?q=vite-plugin&ranking=popularity) for Vite plugins or a [npm search for rollup-plugin](https://www.npmjs.com/search?q=rollup-plugin&ranking=popularity) for Rollup plugins.
+Vous pouvez également trouver des plugins qui suivent les [conventions recommandées](./api-plugin.md#conventions) en utilisant une [recherche npm pour vite-plugin](https://www.npmjs.com/search?q=vite-plugin&ranking=popularity) pour les plugins Vite ou une [recherche npm pour rollup-plugin](https://www.npmjs.com/search?q=rollup-plugin&ranking=popularity) pour les plugins Rollup.
-## Enforcing Plugin Ordering
+## Définir l'ordre des plugins
-For compatibility with some Rollup plugins, it may be needed to enforce the order of the plugin or only apply at build time. This should be an implementation detail for Vite plugins. You can enforce the position of a plugin with the `enforce` modifier:
+Pour la compatibilité avec certains plugins Rollup, il peut être nécessaire de forcer l'ordre du plugin ou de ne l'appliquer qu'au moment du build. Cela devrait être un détail d'implémentation pour les plugins Vite. Vous pouvez imposer la position d'un plugin avec le modificateur `enforce` :
-- `pre`: invoke plugin before Vite core plugins
-- default: invoke plugin after Vite core plugins
-- `post`: invoke plugin after Vite build plugins
+- `pre` : exécuter le plugin avant les plugins principaux de Vite
+- par défaut : exécuter le plugin après les plugins principaux de Vite
+- `post` : exécuter le plugin après les plugins de construction de Vite
```js twoslash [vite.config.js]
import image from '@rollup/plugin-image'
@@ -59,11 +59,11 @@ export default defineConfig({
})
```
-Check out [Plugins API Guide](./api-plugin.md#plugin-ordering) for detailed information.
+Consultez le [Guide de l'API des plugins](./api-plugin.md#plugin-ordering) pour des informations détaillées.
-## Conditional Application
+## Application conditionnelle
-By default, plugins are invoked for both serve and build. In cases where a plugin needs to be conditionally applied only during serve or build, use the `apply` property to only invoke them during `'build'` or `'serve'`:
+Par défaut, les plugins sont invoqués à la fois pour le serveur et le build. Dans les cas où un plugin doit être appliqué conditionnellement uniquement pendant le serveur ou le build, utilisez la propriété `apply` pour ne les invoquer que pendant `'build'` ou `'serve'` :
```js twoslash [vite.config.js]
import typescript2 from 'rollup-plugin-typescript2'
@@ -79,6 +79,6 @@ export default defineConfig({
})
```
-## Building Plugins
+## Créer des plugins
-Check out the [Plugins API Guide](./api-plugin.md) for documentation about creating plugins.
+Consultez le [Guide d'API des plugins](./api-plugin.md) pour la documentation sur la création de plugins.
diff --git a/docs/guide/why.md b/docs/guide/why.md
index f502685..c4d88f7 100644
--- a/docs/guide/why.md
+++ b/docs/guide/why.md
@@ -1,28 +1,28 @@
-# Why Vite
+# Pourquoi Vite
-## The Problems
+## Les problèmes
-Before ES modules were available in browsers, developers had no native mechanism for authoring JavaScript in a modularized fashion. This is why we are all familiar with the concept of "bundling": using tools that crawl, process and concatenate our source modules into files that can run in the browser.
+Avant que les modules ES ne soient disponibles dans les navigateurs, les développeurs n'avaient aucun mécanisme natif pour écrire du JavaScript de manière modulaire. C'est pourquoi nous sommes tous familiers avec le concept de "bundling" : l'utilisation d'outils qui parcourent, traitent et concatènent nos modules source en fichiers pouvant s'exécuter dans le navigateur.
-Over time we have seen tools like [webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org) and [Parcel](https://parceljs.org/), which greatly improved the development experience for frontend developers.
+Au fil du temps, nous avons vu apparaître des outils comme [webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org) et [Parcel](https://parceljs.org/), qui ont considérablement amélioré l'expérience de développement pour les développeurs frontend.
-However, as we build more and more ambitious applications, the amount of JavaScript we are dealing with is also increasing dramatically. It is not uncommon for large scale projects to contain thousands of modules. We are starting to hit a performance bottleneck for JavaScript based tooling: it can often take an unreasonably long wait (sometimes up to minutes!) to spin up a dev server, and even with Hot Module Replacement (HMR), file edits can take a couple of seconds to be reflected in the browser. The slow feedback loop can greatly affect developers' productivity and happiness.
+Cependant, à mesure que nous construisons des applications de plus en plus ambitieuses, la quantité de JavaScript à traiter augmente également de façon spectaculaire. Il n'est pas rare que des projets à grande échelle contiennent des milliers de modules. Nous commençons à atteindre un goulet d'étranglement de performance pour les outils basés sur JavaScript : il peut souvent falloir un temps d'attente déraisonnablement long (parfois jusqu'à plusieurs minutes !) pour démarrer un serveur de développement, et même avec le remplacement de module à chaud (HMR), les modifications de fichiers peuvent prendre quelques secondes avant d'être répercutées dans le navigateur. Cette boucle de retour lente peut grandement affecter la productivité et la satisfaction des développeurs.
-Vite aims to address these issues by leveraging new advancements in the ecosystem: the availability of native ES modules in the browser, and the rise of JavaScript tools written in compile-to-native languages.
+Vite vise à résoudre ces problèmes en tirant parti des nouvelles avancées dans l'écosystème : la disponibilité des modules ES natifs dans le navigateur et l'essor des outils JavaScript écrits dans des langages compilés en code natif.
-### Slow Server Start
+### Démarrage lent du serveur
-When cold-starting the dev server, a bundler-based build setup has to eagerly crawl and build your entire application before it can be served.
+Lors du démarrage à froid du serveur de développement, une configuration de build basée sur un bundler doit parcourir et construire toute votre application avant qu'elle ne puisse être servie.
-Vite improves the dev server start time by first dividing the modules in an application into two categories: **dependencies** and **source code**.
+Vite améliore le temps de démarrage du serveur de développement en divisant d'abord les modules d'une application en deux catégories : **dépendances** et **code source**.
-- **Dependencies** are mostly plain JavaScript that do not change often during development. Some large dependencies (e.g. component libraries with hundreds of modules) are also quite expensive to process. Dependencies may also be shipped in various module formats (e.g. ESM or CommonJS).
+- Les **dépendances** sont principalement du JavaScript simple qui ne change pas souvent pendant le développement. Certaines dépendances volumineuses (par exemple, des bibliothèques de composants avec des centaines de modules) sont également assez coûteuses à traiter. Les dépendances peuvent également être livrées dans différents formats de modules (par exemple, ESM ou CommonJS).
- Vite [pre-bundles dependencies](./dep-pre-bundling.md) using [esbuild](https://esbuild.github.io/). esbuild is written in Go and pre-bundles dependencies 10-100x faster than JavaScript-based bundlers.
+ Vite [pré-bundle les dépendances](./dep-pre-bundling.md) en utilisant [esbuild](https://esbuild.github.io/). esbuild est écrit en Go et pré-bundle les dépendances 10 à 100 fois plus rapidement que les bundlers basés sur JavaScript.
-- **Source code** often contains non-plain JavaScript that needs transforming (e.g. JSX, CSS or Vue/Svelte components), and will be edited very often. Also, not all source code needs to be loaded at the same time (e.g. with route-based code-splitting).
+- Le **code source** contient souvent du JavaScript non standard qui nécessite une transformation (par exemple, JSX, CSS ou composants Vue/Svelte), et sera modifié très fréquemment. De plus, tout le code source n'a pas besoin d'être chargé en même temps (par exemple, avec la séparation du code basée sur les routes).
- Vite serves source code over [native ESM](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules). This is essentially letting the browser take over part of the job of a bundler: Vite only needs to transform and serve source code on demand, as the browser requests it. Code behind conditional dynamic imports is only processed if actually used on the current screen.
+ Vite sert le code source via [ESM natif](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules). C'est essentiellement pour laisser le navigateur prendre en charge une partie du travail d'un bundler : Vite n'a besoin de transformer et de servir le code source qu'à la demande, lorsque le navigateur le demande. Le code derrière les importations dynamiques conditionnelles n'est traité que s'il est effectivement utilisé sur l'écran actuel.