← All posts

CLI

just: A Command Runner That Saves Your Project's Tasks

just is a command runner - save project tasks in a justfile and run them by name, like make without the baggage.

J CLI

Every project accumulates a handful of commands you have to remember: how to build, how to run the tests, how to clear the cache, how to deploy. People reach for a Makefile and then fight make's tab rules and its build-system assumptions. just is the tool that does only the good part: it's a command runner that stores named recipes in a justfile and runs them by name, with none of make's timestamp logic or arcana.

A Home for Project Commands

You write the tasks once, and everyone (including future you) runs them by name:

# justfile build: cd web/themes/custom/devtools_theme && npm run build cr: ddev drush cr deploy: build cr echo 'built and cache cleared'

Then just build, just cr, or just deploy - with recipe dependencies, parameters, and per-recipe shells all supported.

Why Not Make

just looks like make but isn't a build system: no implicit rules, no trouble with tabs, no confusion about phony targets. It's purpose-built for "save and run commands," which is what most people were using make for anyway.

Rough Edges and Limitations

  • It runs commands, it doesn't build. For real dependency-graph builds, an actual build tool fits better.
  • Another binary to install. Contributors need just present to run the recipes.
  • Syntax is its own. Similar to make but not identical - a small thing to learn.

For collecting a project's incantations into one discoverable place, just is the simplest thing that works.

Internal link suggestion: link "how to deploy" to the mise post, which also does task running alongside version management.