# Mise — Dev Environment Manager for Any Language > Single tool to manage Node, Python, Go, Rust, Java, and 100+ dev tool versions. Replaces nvm, pyenv, rbenv with one CLI. Project-level version pinning via .mise.toml. 12,000+ stars. ## Install Save in your project root: ## Quick Use ```bash # Install curl https://mise.run | sh # Install tools mise use node@22 mise use python@3.12 mise use go@1.22 # Project-level pinning (auto-switches when you cd) cd my-project mise use node@20 # Creates .mise.toml ``` --- ## Intro Mise is a polyglot dev environment manager that replaces nvm, pyenv, rbenv, goenv, and dozens of other version managers with a single CLI tool, with 12,000+ GitHub stars. Install and manage versions of Node.js, Python, Go, Rust, Java, Ruby, and 100+ tools from one interface. Project-level version pinning via `.mise.toml` ensures every team member and CI runner uses the exact same versions. Best for developers working across multiple languages who are tired of managing separate version managers. Works with: any language/tool. Setup time: under 1 minute. --- ## Replaces These Tools | Old Tool | Language | Mise Equivalent | |----------|----------|----------------| | nvm / fnm | Node.js | `mise use node@22` | | pyenv | Python | `mise use python@3.12` | | rbenv | Ruby | `mise use ruby@3.3` | | goenv | Go | `mise use go@1.22` | | rustup | Rust | `mise use rust@1.78` | | sdkman | Java | `mise use java@21` | | tfenv | Terraform | `mise use terraform@1.8` | ### Project Configuration ```toml # .mise.toml — commit this to your repo [tools] node = "22" python = "3.12" go = "1.22" [env] DATABASE_URL = "postgres://localhost/mydb" [tasks] dev = "npm run dev" test = "pytest" lint = "ruff check ." ``` ### Auto-Switching When you `cd` into a project, mise automatically activates the right versions: ```bash cd ~/project-a # Node 20, Python 3.11 cd ~/project-b # Node 22, Python 3.12 # No manual switching needed ``` ### Task Runner Built-in task runner (replaces Makefile, npm scripts): ```bash mise run dev # Run dev server mise run test # Run tests mise run lint # Run linter mise run deploy # Deploy ``` ### Environment Variables ```toml [env] AWS_PROFILE = "production" LOG_LEVEL = "debug" [env.production] LOG_LEVEL = "error" ``` ### Performance Written in Rust — instant version switching: ``` mise activate: <1ms nvm use: 200-500ms pyenv: 100-300ms ``` ### Key Stats - 12,000+ GitHub stars - 100+ supported tools - Written in Rust (instant switching) - Project-level .mise.toml - Built-in task runner and env vars ### FAQ **Q: What is Mise?** A: Mise is a single CLI tool that manages versions of Node, Python, Go, Rust, and 100+ dev tools, replacing nvm, pyenv, rbenv, and dozens of other version managers. **Q: Is Mise free?** A: Yes, fully open-source under MIT license. **Q: Is Mise compatible with .nvmrc and .python-version?** A: Yes, Mise reads existing .nvmrc, .node-version, .python-version, and .tool-versions files. --- ## Source & Thanks > Created by [Jeff Dickey](https://github.com/jdx). Licensed under MIT. > > [mise](https://github.com/jdx/mise) — ⭐ 12,000+ Thanks for ending the version manager madness. --- ## 快速使用 ```bash curl https://mise.run | sh mise use node@22 mise use python@3.12 ``` --- ## 简介 Mise 是一个多语言开发环境管理器,GitHub 12,000+ stars。用一个 CLI 替代 nvm、pyenv、rbenv 等众多版本管理器。通过 `.mise.toml` 实现项目级版本锁定。Rust 编写,版本切换瞬间完成。适合跨多语言工作的开发者。 --- ## 来源与感谢 > Created by [Jeff Dickey](https://github.com/jdx). Licensed under MIT. > > [mise](https://github.com/jdx/mise) — ⭐ 12,000+ --- Source: https://tokrepo.com/en/workflows/797fff66-130d-4062-a7a4-ef80acb2e0b2 Author: AI Open Source