Vite+ : Une CLI pour tout unifier, Ou juste une couche de plus de battage ?

Vite+ : Une CLI pour tout unifier, Ou juste une couche de plus de battage ?

lschvn14 min de lecture

Tous les quelques années, quelqu'un dans l'écosystème JavaScript annonce un outilchain unifié, moins de fichiers de config, une seule commande à apprendre. Le résultat est généralement plus compliqué qu'annoncé. Mais Vite+, de VoidZero (fondé par Evan You, créateur de Vue.js et Vite, avec 4,6M$ de Accel), arrive avec des outils dont les affirmations de performance sont indépendamment vérifiées : Rolldown livre des builds production 1,6× à 7,7× plus rapides que Vite 7, et Oxlint fonctionne 50-100× plus vite que ESLint.

Qu'est-ce que Vite+ ?

Vite+ est une CLI au stade alpha qui enveloppe les projets VoidZero existants, Vite, Vitest, Oxlint, Oxfmt, Rolldown et tsdown, sous un seul point d'entrée appelé vp.

Les commandes :

  • vp env : gère l'installation de Node.js globalement et par projet
  • vp install : délègue à un gestionnaire de paquets (par défaut pnpm)
  • vp dev : lance le serveur de développement Vite
  • vp check : lance Oxlint, Oxfmt et tsgo en un seul passage
  • vp test : lance Vitest
  • vp build : build avec Rolldown
  • vp run : exécute les scripts via Vite Task avec cache automatique
  • vp pack : package les bibliothèques avec tsdown + Rolldown

L'objectif est de remplacer la séquence de commandes séparées par un seul binaire et un seul fichier de configuration (vite.config.ts).

Pourquoi VoidZero fait-il cela ?

L'écosystème JavaScript a accumulé trop de coutures entre les outils. ESLint parse votre code. Prettier le formate. tsc le type-check. Rollup le bundle. Chaque outil fait son propre parsing. L'AST est reconstruit encore et encore.

La vision VoidZero est de posséder la pile complète : parser (oxc-parser), transformateur (oxc-transform), linter (Oxlint), formateur (Oxfmt), bundler (Rolldown), test runner (Vitest) et dev server (Vite). Si chaque outil partage la même représentation AST et le même résolveur, vous éliminez le parsing redondant.

Le modèle commercial : Vite+ lui-même est sous licence MIT et open source. Les revenus de VoidZero viennent de "VoidCloud", une couche entreprise, le même modèle que HashiCorp avec Terraform.

Qu'est-ce qui est réellement nouveau vs réemballé ?

Rolldown est la contribution originale la plus significative. C'est un bundler Rust basé sur Oxc, conçu pour remplacer à la fois esbuild et Rollup. Sur une application React de taille moyenne (180K lignes TypeScript, 60 routes), un développeur a mesuré des builds production passant de 94 secondes (Rollup) à 11 secondes (Rolldown), environ 8,5× plus rapide.

Oxc est le moteur sous-jacent. Oxlint est 50-100× plus rapide que ESLint. Oxfmt est environ 30× plus rapide que Prettier. Ces chiffres sont réels et indépendamment vérifiés.

Vite Task est la nouvelle pièce inside Vite+. C'est un task runner qui ajoute du cache automatique à l'exécution des scripts. Il comprend également le graphe de dépendances du monorepo et exécute les tâches dans le bon ordre.

Ce qui n'est pas nouveau : Vite, Vitest, Oxlint, Oxfmt et Rolldown existaient tous avant Vite+.

Les affirmations de performance : réelles, mais lisez les petites lignes

Les affirmations principales :

  • ~1,6× à ~7,7× plus rapides pour les builds production vs Vite 7
  • ~50× à ~100× plus rapide pour le linting vs ESLint
  • ~30× plus rapide pour le formatting vs Prettier

Ces chiffres sont réels mais la variance est grande. Les petits projets voient des gains modestes. Les codebases complexes voient les plus gros gains.

La migration pour les équipes utilisant déjà Vite est réellement fluide :

  1. Installer vp globalement
  2. Exécuter vp migrate, un outil de migration automatisé
  3. Remplacer les commandes individuelles par vp dev, vp test, vp check, vp build

Qui devrait s'en soucier maintenant, et qui devrait attendre

Mettez à jour maintenant si :

  • Vous démarrez un nouveau projet en 2026 et voulez une config rapide et minimale
  • Vous utilisez déjà Vite et voulez simplifier votre outilchain
  • Vous avez un grand monorepo et voulez le cache Vite Task

Attendez si :

  • Votre projet utilise des règles ESLint complexes personnalisées qu'Oxlint ne supporte pas encore
  • Vous êtes sur une ancienne version de Vite et ne pouvez pas consacrer de cycles à tester la migration

Le cas sceptique

Le cas le plus fort contre Vite+ est que c'est un réemballage d'outils existants. Si vous utilisez déjà Vite 8 avec Rolldown, Oxlint et Vitest, Vite+ vous donne une CLI plus belle et un fichier de config. C'est de la valeur réelle, mais incrémentale.

La dépendance VoidZero est également une préoccupation. Vite était à l'origine un projet communautaire sans entreprise derrière. C'est maintenant une entreprise avec du financement, une feuille de route produit entreprise et un modèle commercial pas entièrement disclose.

Le verdict éditorial

Vite+ n'est pas une révolution. C'est une distribution bien conçue d'outils vraiment bons qui méritaient déjà d'être utilisés individuellement.

Les outils sous Vite+ valent la peine d'être connus, que vous utilisiez l'enveloppe ou non. Rolldown remplace Rollup. Oxlint remplace ESLint pour les équipes qui veulent de la vitesse. Le paysage des outils JavaScript se déplace vers des langages natifs, et Vite+ est l'interface la plus cohérente vers ce déplacement pour l'instant.

Questions fréquentes

Articles connexes

Plus de couverture avec des sujets et tags en commun.

Prettier 3.9 refond cinq parseurs : micromark pour Markdown, yaml v2, GraphQL.js v17, un parseur Flow en Rust et Angular
tooling

Prettier 3.9 refond cinq parseurs : micromark pour Markdown, yaml v2, GraphQL.js v17, un parseur Flow en Rust et Angular

Prettier 3.9.0, publié le 27 juin 2026 (prettier/prettier, billet de Fisker Cheung), est une release centrée sur les parseurs qui fait passer Markdown de remark-parse v8 à micromark v4 (meilleure conformité CommonMark et GFM et une série de bugs de parsing de longue date corrigés), YAML à yaml v2, GraphQL à GraphQL.js v17 (arguments de fragment et directives sur les définitions de directive), Flow au nouveau parseur oxidized basé sur Rust de l'équipe Flow (environ 37 % plus rapide sur les fixtures Flow valides de Prettier et 43 % plus rapide sur flow_parser.js en benchmarks parser-only locaux) et Angular. Le formateur JavaScript et TypeScript est aussi retravaillé, en particulier en mode --no-semi où les commentaires autour de break et continue sont maintenant stables entre plusieurs passages (un fix d'idempotence), plus la suppression des parenthèses redondantes dans les return, l'alignement des interpolations de template embarquées et l'inlining des expressions de négation logique. La release retire la syntaxe legacy import ... assert {} (Babel 8 a supprimé le plugin de parseur ; migrez vers with), corrige une option --cache-strategy content silencieusement cassée et empêche les fichiers EditorConfig au-dessus des worktrees Git de s'infiltrer. L'équipe rappelle d'épingler la version exacte dans package.json car les changements de formatage vont produire des diffs.
Biome 2.5 livre `@biomejs/js-api` v6.0.0 : un bump majeur pour l'API JS
tooling

Biome 2.5 livre `@biomejs/js-api` v6.0.0 : un bump majeur pour l'API JS

La CLI Biome passe en 2.5.0 et l'API JavaScript passe en v6.0.0 majeure. Le gros titre est le nouveau helper spanInBytesToSpanInCodeUnits, qui corrige un vrai bug de surrogates UTF-16 dans l'extraction de texte diagnostique non-ASCII, plus une longue liste d'améliorations SCSS, JSON, linter et CLI.
Turborepo 2.10.3 Reconnaît nub et aube, Deux Nouveaux Gestionnaires de Paquets Node.js en Rust par Colin McDonnell (Zod) et Jeff Dickey (mise)
tooling

Turborepo 2.10.3 Reconnaît nub et aube, Deux Nouveaux Gestionnaires de Paquets Node.js en Rust par Colin McDonnell (Zod) et Jeff Dickey (mise)

Turborepo [v2.10.3](https://github.com/vercel/turborepo/releases/tag/v2.10.3) est sorti le 2026-07-03 avec un support de première classe pour [nub](https://github.com/nubjs/nub) et [aube](https://github.com/jdx/aube), deux gestionnaires de paquets Node.js écrits en Rust qui ont émergé au printemps et à l'été 2026. nub est écrit par Colin McDonnell (créateur de [Zod](https://github.com/colinhacks/zod), 43k étoiles) et aube par Jeff Dickey (créateur de [mise](https://github.com/jdx/mise)); les deux s'intègrent à Turborepo comme valeurs `packageManager` dans `package.json` et `devEngines.packageManager`. La release apporte aussi un nouveau toggle TUI/logs-streamés, la sélection de tâches au clic dans la liste de tâches TUI, la copie automatique des sélections TUI au presse-papiers à la souris, un flag `--production` sur `turbo prune`, TypeScript 7.0.1-rc comme toolchain de workspace, thin LTO + `codegen-units=1` pour les builds de release, et une longue liste de corrections de perf sur le cache-hashing. Le signal principal: deux des builders les plus respectés du toolchain JS livrent désormais des gestionnaires de paquets qui s'appuient sur Node stock au lieu de le remplacer, et Turborepo est le premier outil de monorepo mainstream à formaliser les deux.

Commentaires

Connexion Connectez-vous pour participer à la conversation.

Pas encore de commentaires. Soyez le premier à partager vos pensées.