Skip to content

paulocod/ztl-cli

⚡ ztl

Um CLI interativo para rodar scripts definidos no package.json, inspirado no ntl — agora em Rust 🚀

Crates.io License Downloads


✨ Visão geral

ztl é uma ferramenta de linha de comando feita para desenvolvedores Node.js que querem uma forma rápida, bonita e prática de visualizar e executar os scripts definidos no package.json.

  • ⚡ Feito em Rust para performance máxima
  • 🧠 Interface interativa com navegação via teclado
  • 🔍 Detecta npm, yarn e pnpm
  • 🪄 Auto fallback se o package.json não estiver presente
  • 💬 Erros claros e amigáveis

📦 Instalação

Pré-requisitos

  • Rust instalado (via rustup)

Instalando via Cargo

cargo install ztl-cli

🚀 Como usar

Dentro de um projeto Node.js com package.json, execute:

ztl

Você verá uma lista interativa com os scripts disponíveis. Selecione com as setas e pressione Enter para rodar.

Demo do ztl


🗺️ Roadmap

🧩 Fase 1 – MVP ✅

  • Inicializar projeto Rust com binário CLI.
  • Ler package.json do diretório atual.
  • Listar scripts disponíveis.
  • Prompt interativo (dialoguer).
  • Executar script com npm run <script>.

🧪 Fase 2 – Qualidade ⏳

  • Detectar package manager.
  • Mensagem clara sem package.json.
  • Logs e saída colorida.
  • Autocomplete parcial.
  • Ordenar scripts.
  • Flags --version e --help.

🔄 Fase 3 – Extras

  • Suporte a workspaces (nx, turborepo).
  • Cache, histórico, atalhos e aliases.
  • Agrupamento por prefixos (ex: dev:).
  • Modo detalhado dos scripts.

📦 Fase 4 – Distribuição

  • Publicar no crates.io
  • README com GIFs e exemplos completos
  • Testes e CI/CD
  • Instalação via Homebrew, Scoop, etc.

👨‍💻 Contribuindo

Contribuições são bem-vindas! Veja o CONTRIBUTING.md e sinta-se livre pra abrir issues, PRs ou ideias 🙌


📄 Licença

Licenciado sob MIT OR Apache-2.0.

About

No description, website, or topics provided.

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE.md
MIT
LICENSE-MIT.md

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages