Repolode
google

google/zx

Ferramenta baseada em JavaScript para escrever scripts no estilo shell, com uma camada sobre child_process que escapa argumentos com segurança e oferece recursos multiplataforma.

Estrelas
45,813
Forks
1,320
Issues abertas
22
Último commit
há 9 dias

O que é?

Com zx, você escreve scripts em JavaScript e executa comandos de shell com uma sintaxe concisa. A tag de template `$` executa comandos, escapa automaticamente os argumentos interpolados e retorna a saída, transformando tarefas comuns de Bash, como pipelines, execução paralela e operações com arquivos, em código comum.

O pacote oferece uma camada sobre child_process do Node.js, com recursos multiplataforma e padrões sensatos, reduzindo boa parte do código repetitivo necessário para iniciar processos diretamente. Funciona no Linux, macOS e Windows, e roda em Node.js, Bun, Deno e GraalVM Node.js, usando Bash ou PowerShell como shell subjacente.

É compatível com módulos CommonJS e ESM, além de projetos JavaScript e TypeScript. Também está disponível uma variante mais leve, zx@lite.

Recursos principais

  • 01Executa comandos de shell por meio da tag de template `$`, com escape automático de argumentos.
  • 02Oferece wrappers multiplataforma para child_process do Node.js.
  • 03É compatível com Bash e PowerShell como shell subjacente.
  • 04Funciona com Node.js, Bun, Deno e GraalVM Node.js.
  • 05É compatível com CommonJS e ESM, em JavaScript ou TypeScript.

Casos de uso

  • Escrever scripts de deploy ou build que chamam git, docker ou outras ferramentas CLI.
  • Executar vários comandos de shell em paralelo a partir de um único script Node.js.
  • Substituir scripts Bash complexos por código JavaScript ou TypeScript mais fácil de manter.

Início rápido

  1. 1

    Instale o zx com npm

    npm install zx
  2. 2

    Escreva um script usando a API do zx e execute-o com o comando zx, conforme indicado na documentação

Antes de usar

  • Os detalhes de configuração e uso estão apenas na documentação externa, não no README; por isso, é preciso ler a documentação vinculada para começar.

Tópicos

Perguntas frequentes

O que é zx?
Ferramenta baseada em JavaScript para escrever scripts no estilo shell, com uma camada sobre child_process que escapa argumentos com segurança e oferece recursos multiplataforma. Com zx, você escreve scripts em JavaScript e executa comandos de shell com uma sintaxe concisa. A tag de template `$` executa comandos, escapa automaticamente os argumentos interpolados e retorna a saída, transformando tarefas comuns de Bash, como pipelines, execução paralela e operações com arquivos, em código comum.
zx é gratuito? Qual é a licença?
zx é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
zx ainda é mantido?
Manutenção ativa. O último commit de zx foi em 12 de out. de 2026.
Para que posso usar zx?
Escrever scripts de deploy ou build que chamam git, docker ou outras ferramentas CLI. Executar vários comandos de shell em paralelo a partir de um único script Node.js. Substituir scripts Bash complexos por código JavaScript ou TypeScript mais fácil de manter.
Como instalar zx?
Instale o zx com npm: npm install zx Escreva um script usando a API do zx e execute-o com o comando zx, conforme indicado na documentação
Onde consigo zx?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/google/zx

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados