just.1
Run project-specific commands from a `justfile`
TLDR
Run a recipe specified in the justfile
Initialize new justfile in project root
Edit justfile in the default editor
List available recipes in the justfile
Print justfile
SYNOPSIS
just [OPTIONS] [TARGET [ARG …]]
PARAMETERS
-C DIR, --directory DIR
Change to directory DIR before reading justfile
-d N, --dump
Dump variables and exit (level N controls verbosity)
-f FILE, --file FILE
Use FILE as justfile
--choose
Interactively choose a recipe to run
--list
List available recipes
--summary
List recipes with descriptions
--dry-run
Print commands without executing
--dry
Alias for --dry-run
-h, --help
Print help
-V, --version
Print version
DESCRIPTION
just is a command runner that provides a convenient way to save and run project-specific commands. Recipes are stored in a file called 'justfile' with a syntax inspired by Make but simplified and more approachable.
It supports features like dependencies between recipes, variables, string interpolation, conditionals, loops, shebang lines, and private recipes. Arguments can be passed to recipes, with support for rest arguments, variadic arguments, and default values.
just automatically chooses the appropriate executable based on the current directory, supports multiple justfiles, and offers powerful invocation options like dry runs, choosing targets interactively, and dumping variables for debugging. It's particularly popular in development workflows for building, testing, and deploying projects, especially in Rust and other modern ecosystems.
Unlike Make, justfiles use declarative syntax without tabs, making them easier to read and edit. It's cross-platform and written in Rust for performance and safety.
CAVEATS
Not installed by default; requires manual installation. justfile must be named 'justfile' or specified with -f. Fails if no justfile found unless --choose used.
JUSTFILE LOCATION
Searched in current dir, parents, JUSTFILE, HOME/.justfile; use --file to override.
INSTALLATION
Via Cargo: cargo install just; binaries on GitHub releases; some distros package it.
EXAMPLE RECIPE
test:
test-a
test-b
echo 'Tests passed!'
HISTORY
Developed by Casey Primozic (dustballbear), first released in 2020. Written in Rust, gained popularity for its simplicity over Make. Version 1.0.0 in 2022; actively maintained with frequent updates.


