Repolode
jdx

jdx/mise

Uma única CLI em Rust para instalar ferramentas do projeto, definir variáveis de ambiente e executar tarefas a partir de um arquivo mise.toml.

Alternativa open source a:asdfnvm

Estrelas
35,250
Forks
1,493
Issues abertas
10
Último commit
há 4 horas

O que é?

mise (abreviação de mise-en-place) gerencia as ferramentas necessárias para um projeto, como Node.js, Python e Terraform, permitindo usar uma versão diferente em cada projeto. Também carrega variáveis de ambiente e arquivos `.env` de cada projeto, além de executar tarefas como build e test com essas ferramentas e variáveis disponíveis. Tudo isso é declarado em um único arquivo `mise.toml`, que funciona no shell, em editores e no CI.

O registro de ferramentas inclui mais de 1.000 opções. Ao ativar o mise em um shell, as ferramentas do projeto são adicionadas ao PATH e suas variáveis são definidas quando você entra no diretório. O comando `mise bootstrap` também pode aplicar pacotes do sistema, dotfiles, repositórios e serviços em uma máquina nova.

Você pode adotar apenas as partes de que precisa, começando com uma única ferramenta ou tarefa. A instalação está disponível por meio de um script de shell, winget, Homebrew, apt e Scoop.

Recursos principais

  • 01Instala versões de ferramentas por projeto, como Node.js, Python e Terraform, a partir de um registro com mais de 1.000 ferramentas.
  • 02Define variáveis de ambiente e carrega arquivos `.env` para cada projeto.
  • 03Executa tarefas do projeto com as ferramentas e variáveis de ambiente correspondentes aplicadas.
  • 04Prepara uma máquina com pacotes do sistema, dotfiles, repositórios e serviços.
  • 05Registra versões exatas das ferramentas em um lockfile para colegas de equipe e CI.

Casos de uso

  • Manter versões diferentes de Node.js ou Python em vários projetos na mesma máquina.
  • Dar a novos integrantes da equipe um único comando para instalar todas as ferramentas e tarefas do projeto.
  • Substituir scripts de shell improvisados para tarefas de build, test e lint por uma configuração compartilhada.
  • Configurar um novo laptop de desenvolvimento a partir de pacotes e dotfiles declarados.

Tópicos

Perguntas frequentes

O que é mise?
Uma única CLI em Rust para instalar ferramentas do projeto, definir variáveis de ambiente e executar tarefas a partir de um arquivo mise.toml. mise (abreviação de mise-en-place) gerencia as ferramentas necessárias para um projeto, como Node.js, Python e Terraform, permitindo usar uma versão diferente em cada projeto. Também carrega variáveis de ambiente e arquivos `.env` de cada projeto, além de executar tarefas como build e test com essas ferramentas e variáveis disponíveis. Tudo isso é declarado em um único arquivo `mise.toml`, que funciona no shell, em editores e no CI.
mise é gratuito? Qual é a licença?
mise é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
mise ainda é mantido?
Manutenção ativa. O último commit de mise foi em 22 de out. de 2026.
Para que posso usar mise?
Manter versões diferentes de Node.js ou Python em vários projetos na mesma máquina. Dar a novos integrantes da equipe um único comando para instalar todas as ferramentas e tarefas do projeto. Substituir scripts de shell improvisados para tarefas de build, test e lint por uma configuração compartilhada. Configurar um novo laptop de desenvolvimento a partir de pacotes e dotfiles declarados.
Onde consigo mise?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/jdx/mise

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

Projetos relacionados