A 2.4 MB checkout solves the command-memory problem
In our 2.4 MB checkout, Just gives a project one named menu for commands people otherwise keep in a README, package script, wiki page, or shell history. A recipe can run a test suite, publish an artifact, or call the real build tool. Running just finds a justfile in the current directory or a parent, so the same entry points work from a nested folder. That behavior reduces onboarding guesswork.
The 320-file checkout contains about 65,795 lines of source, which explains why Just now reaches well beyond a thin shell wrapper. Recipes accept positional arguments, flags, defaults, dependencies, aliases, documentation comments, and private visibility. Modules and imports split a large command catalog across files. Script recipes can use Python, Node.js, or another interpreter, while static checks catch unknown recipes and circular dependencies before commands begin.
Version 1.0 drew a firm line between commands and builds
Since version 1.0, Just has promised compatibility for existing justfiles and says there will never be a Just 2.0 migration. Newer syntax can be guarded with minimum-version, and unfinished features require an explicit unstable opt-in. That policy makes a checked-in command file a reasonable team interface. A new release should not casually turn yesterday's just test into a different operation.
Our 3-CPU sandbox also exposed the boundary that makes Just useful. It runs recipes every time because recipes are commands, not file targets. Make can inspect timestamps and skip work when an output is current; Just deliberately does not. Keep Cargo, Ninja, Make, or another build engine responsible for incremental work, then let Just provide memorable names for the commands people should invoke.
What happened when we ran it
Our run installed 104 packages in 7 seconds, then built commit 9076dd9 in 39 seconds. The Rust repository occupied 2.4 MB when checked out and had 320 files. Both setup steps completed without an error. That is a low trial cost for someone evaluating the source, even though most users can avoid compilation and install a released binary from their platform's package manager.
The complete test command ran for 20 seconds and exited with code 101. Across the supplied summary, 4 of 4,840 tests failed and 4,836 passed. The final integration output showed 1,843 passing tests, 2 failures, and 18 ignored tests. Those named failures were directories::runtime_directory and functions::env_var_functions_unix; the tail also showed an environment lookup returning NotPresent.
The 2 named integration failures do not prove a cause
The 2 named failures both touched environment-facing behavior, but the log tail does not establish why the expected value was absent. We cannot tell from NotPresent whether the container lacked a variable, the test expected a directory convention, or the code had a defect at commit 9076dd9. The defensible finding is narrower: the full suite did not pass in the stated fresh Debian container.
That container had 3 CPUs, 12 GB of RAM, no secrets, and ran without privileges. It was enough for the install and build, yet the test result means a contributor should reproduce the suite on the intended host before changing runtime-directory or environment-variable code. The README's contributor path also calls for current stable Rust, plus mdBook and mdbook-linkcheck when running the broader just ci recipe.
Windows support requires an explicit shell decision
The 2.4 MB source tree supports Linux, macOS, Windows, and other Unix-like systems, but recipes still execute through a shell. On Windows, the default route needs sh from Git for Windows, GitHub Desktop, or Cygwin. A team that prefers PowerShell or cmd.exe can set that in the justfile, which is better than leaving each developer's local shell choice implicit.
Just needs no account, API key, database, or background service. The 7-second sandbox install was source-oriented; end users can choose a prebuilt binary or a package manager instead. Dotenv support is optional and explicit. If a recipe loads secrets, the security boundary is still the commands and files your team writes. Just makes those commands repeatable, but it does not inspect their intent.
36,013 stars sit beside a closed pull-request door
GitHub showed 36,013 stars, 170 open issues, and a push on September 26, 2026. Issue 3517 was closed the same day, while issue 3248 had discussion updated a day earlier. That combination is stronger evidence of maintenance than the release date alone. The latest tagged release was v1.58.0 from August 3, 2026, and the repository was still receiving changes afterward.
The project has 2 CI workflow files and a tests directory, but no Dockerfile in the measured checkout. Its README currently says pull requests are not being accepted, even though the older contribution instructions remain below that notice. Users can still file issues or ask for help through the listed Discord. Developers seeking a project where outside code contributions are welcome should treat the closed PR route as a present constraint.
Four failures make the source trial conditional
The 4 failures in 4,840 tests do not make Just a poor command runner. Its recipe list gives newcomers a map, arguments keep common variations discoverable, and modules stop a busy file from becoming one long scroll. Task is the cleaner comparison for YAML users. Mise deserves a look when toolchain installation and task execution should share one configuration system.
Our 39-second build and 4 failed tests point to different jobs. For day-to-day command execution, use a released binary, pin the minimum version your justfile needs, and keep the file boring enough to read. For source contribution or packaging, reproduce those environment-related test failures before calling the checkout clean.

