Skip to content


mise (pronounced "meez") or "mise-en-place" is a development environment setup tool. The name refers to a French culinary phrase that roughly translates to "setup" or "put in place". The idea is that before one begins cooking, they should have all their utensils and ingredients ready to go in their place.

mise does the same for your projects. Using its .mise.toml config file, you'll have a consistent way to setup and interact with your projects no matter what language they're written in.

Its functionality is grouped into 3 categories described below.

mise installs and manages dev tools/runtimes like node, python, or terraform both simplifying installing these tools and allowing you to specify which version of these tools to use in different projects. mise supports hundreds of dev tools.

mise manages environment variables letting you specify configuration like AWS_ACCESS_KEY_ID that may differ between projects. It can also be used to automatically activate a Python virtualenv when entering projects too.

mise is a task runner that can be used to share common tasks within a project among developers and make things like running tasks on file changes easy.


mise is mostly built and maintained by me, Jeff Dickey. The goal is to make local development of software easy and consistent across languages. I have spent many years building dev tools and thinking about the problems that mise addresses.

I try to use the first-person in these docs since the reality is it's generally me writing them and I think it makes it more interesting having a bit of my personality in the text.

This project is simply a labor of love. I am making it because I want to make your life as a developer easier. I hope you find it useful. Feedback is a massive driver for me. If you have anything positive or negative to say-even if it's just to say hi-please reach out to me either on Twitter, Mastodon, Discord, or jdx at this domain.

Licensed under the MIT License. Maintained by @jdx and friends.