Skip to content

pantoken / workspace-orchestrator

workspace-orchestrator

Expérimental

@pantoken/vite-workspace-orchestrator — un plugin pour le serveur de développement Vite qui surveille les packages de l'espace de travail en amont et les reconstruit (ainsi que leurs dépendants) lorsque le code source change.

Pendant le développement, les modifications d'un package local de l'espace de travail nécessitent normalement une reconstruction manuelle avant que le serveur de dev ne les reflète. Ce plugin automatise cela : il surveille la source de chaque package en amont avec le fs.watch natif (et non chokidar de Vite, qui filtre les chemins en dehors de la racine du projet), débounce les changements rapides, reconstruit dans l'ordre topologique, et enregistre la sortie construite auprès du watcher de Vite afin que le navigateur recharge. Dans la documentation de pantoken, il maintient le CSS généré (@pantoken/css, @pantoken/components) à jour pendant que vous éditez les bibliothèques, au lieu de seulement au moment de la compilation.

Il ne s'applique que pendant serve, donc les build de production restent inchangés.

Exemple

ts
import { resolve } from "node:path";
import { workspaceOrchestrator } from "@pantoken/vite-workspace-orchestrator";

workspaceOrchestrator({
  upstream: [
    {
      name: "@pantoken/components",
      dir: resolve(root, "formats/components"),
      watchPaths: [resolve(root, "formats/components/src")],
      build: ["pnpm", "run", "build"],
      dependents: [],
    },
  ],
  outputWatchPaths: [resolve(root, "formats/components/generated")],
});

Interfaces

Fonctions