Skip to content

pantoken / workspace-orchestrator

workspace-orchestrator

Expérimental

@pantoken/vite-workspace-orchestrator — un plugin du 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.

Lors du développement, les modifications apportées à 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 hors de la racine du projet), regroupe les changements rapides (debounce), reconstruit dans l’ordre topologique et enregistre la sortie construite auprès du watcher de Vite afin que le navigateur se recharge. Dans la documentation de pantoken, il garde le CSS généré (@pantoken/css, @pantoken/components) à jour pendant que vous modifiez les bibliothèques, au lieu d’attendre uniquement l’heure de build.

Il s’applique uniquement pendant serve, donc les builds 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