Command-runner
-
Just: The Command Runner
If you’ve ever used
maketo run commands, it works, but you’re using a build system as a command runner. Just is a dedicated command runner that does exactly what wnat and doesn’t come with all the baggage.Created by Casey Rodarmor about a decade ago (it turns 10 this June), Just is written in Rust and laser-focused on being a really good command runner. That’s it; just a clean way to define and run commands.
Why I Use It
On a lot of my projects, I use Just in conjunction with Mise. Mise does a fine job as a task runner, but when I want something more expressive for command orchestration, Just is what I reach for.
For example, I’ve got a lot of really long Python commands these days. I’m injecting environment variables at runtime, calling Poetry, then running Python with specific arguments. There’s a ton of boilerplate you have to type out every time. I don’t want to remember all of that, and I definitely don’t want to go digging through my shell history or copy-pasting from a README.
Just simplifies that. Define it once in a
justfile, and now your common commands are nowjust <recipe>.Modules Changed the Game
Something I started using recently is Just’s module system, which with it you can create separate
.justfiles and have your mainjustfileimport them as submodules. This lets you group related commands naturally.So instead of flat recipes like:
just test-cover just test-unit just test-integrationYou can organize them into modules:
just test cover just test unit just test integrationIt’s a small change, but it makes your command surface feel a lot more intuitive, especially as your project grows and you accumulate dozens of commands.
Getting Started
If you want to dig deeper, Casey wrote a great walkthrough called Tour de Just that covers the highlights. The official documentation is great too.
Just is commercially friendly, widely packaged, and easy to install on pretty much any platform. If you find it useful, you should consider sponsoring Casey on GitHub. Open source maintainers deserve support for tools we rely on daily.
/ Tools / Development / Just / Command-runner