Skip to content

pantoken / workspace-orchestrator

workspace-orchestrator

Experimental

@pantoken/vite-workspace-orchestrator — um plugin do dev-server do Vite que monitora pacotes do workspace upstream e os reconstrói (e reconstrói seus dependentes) quando o código-fonte muda.

Durante o desenvolvimento, alterações em um pacote do workspace local normalmente exigem uma reconstrução manual antes que o dev server as reflita. Este plugin automatiza isso: observa a fonte de cada pacote upstream com o fs.watch nativo (não o chokidar do Vite, que filtra caminhos fora da raiz do projeto), faz debounce de alterações rápidas, reconstrói em ordem topológica e registra a saída construída no watcher do Vite para que o navegador recarregue. Nos docs do pantoken, mantém o CSS gerado (@pantoken/css, @pantoken/components) atualizado enquanto você edita as bibliotecas, em vez de apenas no momento do build.

Aplica-se apenas durante serve, portanto as builds de produção permanecem inalteradas.

Exemplo

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

Funções