{"slug": "just", "name": "just", "category": "productivity", "category_name": "Productivity", "description": "Command runner for saving and running project-specific commands, similar to Make.", "recommenders": 9, "commenters": 9, "warners": 0, "score": 8.182, "rising": 1.04, "first": "2026-01-14", "latest": "2026-08-17", "why": "Liked as a simpler, more ergonomic alternative to Make for running project tasks, CI steps and team onboarding recipes.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 8, "neutral": 1, "compare": 0, "warn": 0}, "spark": [0, 0, 0, 0, 0, 3, 0, 0, 2, 3, 0, 0], "listed": true, "loved": ["Task running", "Simpler than Make"], "caveat": "Narrow scope", "short_quote": "I've started to embrace Just (https://github.com/casey/just) which is basically just a simpler Make.", "icon": true, "domain": null, "github_repo": "github.com/casey/just", "official_url": "https://github.com/casey/just", "pricing": "open source", "aliases": ["just", "Just"], "verdict": [{"text": "Liked as a simpler, more ergonomic alternative to Make", "cites": [{"id": 786592096, "item_id": 49162006, "url": "https://news.ycombinator.com/item?id=49162006", "by": "kstrauser", "date": "2026-08-03", "stance": "recommend", "quote": "And then I use Just for a week and become a diehard fan.", "excerpt": "I was on the \"just use makefiles\" boat way too long, except it was Just at the time that was calling for my attention. At first glance, they look similar. Make's already there, so what's the big deal? And then I use Just for a week and become a diehard fan. Yeah, it's similar to make, except optimized for developer ergonomics instead of feature completeness. What if... the tool actually supported and encouraged you i", "context": "", "use_case": "task runner", "switched_from": "make", "story": "Use Task Runners for Common Coding Tasks"}, {"id": 748691024, "item_id": 46793189, "url": "https://news.ycombinator.com/item?id=46793189", "by": "embedding-shape", "date": "2026-01-28", "stance": "recommend", "quote": "I've started to embrace Just (https://github.com/casey/just) which is basically just a simpler Make.", "excerpt": "> My monorepos have become increasingly multilingual over the years, often due to dependencies, and it's not uncommon to find a make file, cargo.toml, package.json, deno.json, venv + requirements.json, etc. all living in the same root. Same! Usual move used to put everything in Makefile, but after getting traumatized time and time again from ever-growing complexity, I've started to embrace Just (https://github.com/ca", "context": "works across teams", "use_case": "project task runner", "switched_from": "Make", "story": "Make.ts"}, {"id": 761989024, "item_id": 47624314, "url": "https://news.ycombinator.com/item?id=47624314", "by": "axegon_", "date": "2026-04-03", "stance": "recommend", "quote": "just[1] is now a very mature and well thought out alternative.", "excerpt": "I used to do that but there are a few catches. As much as I brush off people who use any OS other than Linux, there is a time when you will have to do something on another operating system. A lesson I learned the hard way: Make on Windows sucks royally. While I agree with the general idea and I also tend to be conservative about new technologies (even more so with all the slop-coding lately), just[1] is now a very ma", "context": "", "use_case": "task runner", "switched_from": "Make", "story": "Show HN: Home Maker: Declare Your Dev Tools in a Makefile"}]}, {"text": " for running project tasks, CI steps and team onboarding recipes.", "cites": [{"id": 765532627, "item_id": 47845789, "url": "https://news.ycombinator.com/item?id=47845789", "by": "sshine", "date": "2026-04-21", "stance": "recommend", "quote": "As the author, I also love `just` and I have the CI steps as `just fmt`, etc.", "excerpt": "I handle polyglot monorepos using Nix. Because Nix is a package manager not tied to one programming language ecosystem, I can install all the tools for every language I need, and have the tooling consistent and modular, even between monorepos. For formatting I usee treefmt-nix, which quickly format all syntaxes in my repo (.nix, .rs, .md, etc.) by calling individual formatters (installed via Nix), such as rustfmt, md", "context": "", "use_case": "task runner for CI steps", "switched_from": "", "story": "Using Changesets in a polyglot monorepo"}, {"id": 781813345, "item_id": 48863334, "url": "https://news.ycombinator.com/item?id=48863334", "by": "BeetleB", "date": "2026-07-10", "stance": "recommend", "quote": "Everything the team did (including onboarding), had to be done via a just[1] recipe.", "excerpt": "I can somewhat sympathize - I guess the debatable aspect is to what extent should you teach? If someone knows no development tools, then yes, it is good if someone in the team knows Visual Studio Code and can guide them. In my previous job, another senior person knew it and helped out (VSCode was not mandated, and they were free to use some other tool). I tend to focus on training people on the concepts (code navigat", "context": "senior team member", "use_case": "onboarding and task automation", "switched_from": "", "story": "In Emacs, Everything Looks Like a Service"}, {"id": 780298785, "item_id": 48768674, "url": "https://news.ycombinator.com/item?id=48768674", "by": "yoyohello13", "date": "2026-07-02", "stance": "recommend", "quote": "run \u2018just services\u2019 and it all \u201cjust works (tm)\u201d", "excerpt": "We have a consistent wsl image for everyone. So they are all on Linux. Then we have a podman pod defined in a bash script. We have a Justfile where you can run \u2018just services\u2019 and it all \u201cjust works (tm)\u201d. Once the pod is defined you can use \u2018podman pod up/down\u2019 to interact with it, but mostly we encourage people to use the Just recipes to do the things. The thing is, podman has docker-compose like management built i", "context": "", "use_case": "task runner for dev services", "switched_from": "", "story": "Podman v6.0.0"}, {"id": 764116657, "item_id": 47757291, "url": "https://news.ycombinator.com/item?id=47757291", "by": "mcevoypeter", "date": "2026-04-13", "stance": "recommend", "quote": "for more structured scripting.", "excerpt": "1. https://github.com/junegunn/fzf for fuzzy search. Great for easily searching and selecting git branches + tags + commits, commands from shell history, files, shell jobs, processes, etc. 2. https://github.com/casey/just for more structured scripting.", "context": "", "use_case": "structured scripting", "switched_from": "", "story": "Ask HN: What dev tools do you rely on that nobody talks about?"}]}, {"text": " Complaints are rare; one former fan later switched to mise", "cites": [{"id": 786592096, "item_id": 49162006, "url": "https://news.ycombinator.com/item?id=49162006", "by": "kstrauser", "date": "2026-08-03", "stance": "recommend", "quote": "And then I use Just for a week and become a diehard fan.", "excerpt": "I was on the \"just use makefiles\" boat way too long, except it was Just at the time that was calling for my attention. At first glance, they look similar. Make's already there, so what's the big deal? And then I use Just for a week and become a diehard fan. Yeah, it's similar to make, except optimized for developer ergonomics instead of feature completeness. What if... the tool actually supported and encouraged you i", "context": "", "use_case": "task runner", "switched_from": "make", "story": "Use Task Runners for Common Coding Tasks"}]}, {"text": " because it also manages tools and environment variables.", "cites": [{"id": 786592096, "item_id": 49162006, "url": "https://news.ycombinator.com/item?id=49162006", "by": "kstrauser", "date": "2026-08-03", "stance": "recommend", "quote": "And then I use Just for a week and become a diehard fan.", "excerpt": "I was on the \"just use makefiles\" boat way too long, except it was Just at the time that was calling for my attention. At first glance, they look similar. Make's already there, so what's the big deal? And then I use Just for a week and become a diehard fan. Yeah, it's similar to make, except optimized for developer ergonomics instead of feature completeness. What if... the tool actually supported and encouraged you i", "context": "", "use_case": "task runner", "switched_from": "make", "story": "Use Task Runners for Common Coding Tasks"}]}], "praise": [{"label": "Task running", "summary": "Used for structured scripting, CI steps and commands in multilingual monorepos.", "quotes": [{"id": 765532627, "item_id": 47845789, "url": "https://news.ycombinator.com/item?id=47845789", "by": "sshine", "date": "2026-04-21", "stance": "recommend", "quote": "As the author, I also love `just` and I have the CI steps as `just fmt`, etc.", "excerpt": "I handle polyglot monorepos using Nix. Because Nix is a package manager not tied to one programming language ecosystem, I can install all the tools for every language I need, and have the tooling consistent and modular, even between monorepos. For formatting I usee treefmt-nix, which quickly format all syntaxes in my repo (.nix, .rs, .md, etc.) by calling individual formatters (installed via Nix), such as rustfmt, md", "context": "", "use_case": "task runner for CI steps", "switched_from": "", "story": "Using Changesets in a polyglot monorepo"}, {"id": 748691024, "item_id": 46793189, "url": "https://news.ycombinator.com/item?id=46793189", "by": "embedding-shape", "date": "2026-01-28", "stance": "recommend", "quote": "I've started to embrace Just (https://github.com/casey/just) which is basically just a simpler Make.", "excerpt": "> My monorepos have become increasingly multilingual over the years, often due to dependencies, and it's not uncommon to find a make file, cargo.toml, package.json, deno.json, venv + requirements.json, etc. all living in the same root. Same! Usual move used to put everything in Makefile, but after getting traumatized time and time again from ever-growing complexity, I've started to embrace Just (https://github.com/ca", "context": "works across teams", "use_case": "project task runner", "switched_from": "Make", "story": "Make.ts"}, {"id": 764116657, "item_id": 47757291, "url": "https://news.ycombinator.com/item?id=47757291", "by": "mcevoypeter", "date": "2026-04-13", "stance": "recommend", "quote": "for more structured scripting.", "excerpt": "1. https://github.com/junegunn/fzf for fuzzy search. Great for easily searching and selecting git branches + tags + commits, commands from shell history, files, shell jobs, processes, etc. 2. https://github.com/casey/just for more structured scripting.", "context": "", "use_case": "structured scripting", "switched_from": "", "story": "Ask HN: What dev tools do you rely on that nobody talks about?"}]}, {"label": "Simpler than Make", "summary": "Described as a simpler Make built for developer ergonomics rather than feature completeness.", "quotes": [{"id": 786592096, "item_id": 49162006, "url": "https://news.ycombinator.com/item?id=49162006", "by": "kstrauser", "date": "2026-08-03", "stance": "recommend", "quote": "And then I use Just for a week and become a diehard fan.", "excerpt": "I was on the \"just use makefiles\" boat way too long, except it was Just at the time that was calling for my attention. At first glance, they look similar. Make's already there, so what's the big deal? And then I use Just for a week and become a diehard fan. Yeah, it's similar to make, except optimized for developer ergonomics instead of feature completeness. What if... the tool actually supported and encouraged you i", "context": "", "use_case": "task runner", "switched_from": "make", "story": "Use Task Runners for Common Coding Tasks"}, {"id": 748691024, "item_id": 46793189, "url": "https://news.ycombinator.com/item?id=46793189", "by": "embedding-shape", "date": "2026-01-28", "stance": "recommend", "quote": "I've started to embrace Just (https://github.com/casey/just) which is basically just a simpler Make.", "excerpt": "> My monorepos have become increasingly multilingual over the years, often due to dependencies, and it's not uncommon to find a make file, cargo.toml, package.json, deno.json, venv + requirements.json, etc. all living in the same root. Same! Usual move used to put everything in Makefile, but after getting traumatized time and time again from ever-growing complexity, I've started to embrace Just (https://github.com/ca", "context": "works across teams", "use_case": "project task runner", "switched_from": "Make", "story": "Make.ts"}, {"id": 761989024, "item_id": 47624314, "url": "https://news.ycombinator.com/item?id=47624314", "by": "axegon_", "date": "2026-04-03", "stance": "recommend", "quote": "just[1] is now a very mature and well thought out alternative.", "excerpt": "I used to do that but there are a few catches. As much as I brush off people who use any OS other than Linux, there is a time when you will have to do something on another operating system. A lesson I learned the hard way: Make on Windows sucks royally. While I agree with the general idea and I also tend to be conservative about new technologies (even more so with all the slop-coding lately), just[1] is now a very ma", "context": "", "use_case": "task runner", "switched_from": "Make", "story": "Show HN: Home Maker: Declare Your Dev Tools in a Makefile"}]}, {"label": "Team workflows", "summary": "Teams route onboarding and common tasks through just recipes that are easy to spot.", "quotes": [{"id": 781813345, "item_id": 48863334, "url": "https://news.ycombinator.com/item?id=48863334", "by": "BeetleB", "date": "2026-07-10", "stance": "recommend", "quote": "Everything the team did (including onboarding), had to be done via a just[1] recipe.", "excerpt": "I can somewhat sympathize - I guess the debatable aspect is to what extent should you teach? If someone knows no development tools, then yes, it is good if someone in the team knows Visual Studio Code and can guide them. In my previous job, another senior person knew it and helped out (VSCode was not mandated, and they were free to use some other tool). I tend to focus on training people on the concepts (code navigat", "context": "senior team member", "use_case": "onboarding and task automation", "switched_from": "", "story": "In Emacs, Everything Looks Like a Service"}, {"id": 780298785, "item_id": 48768674, "url": "https://news.ycombinator.com/item?id=48768674", "by": "yoyohello13", "date": "2026-07-02", "stance": "recommend", "quote": "run \u2018just services\u2019 and it all \u201cjust works (tm)\u201d", "excerpt": "We have a consistent wsl image for everyone. So they are all on Linux. Then we have a podman pod defined in a bash script. We have a Justfile where you can run \u2018just services\u2019 and it all \u201cjust works (tm)\u201d. Once the pod is defined you can use \u2018podman pod up/down\u2019 to interact with it, but mostly we encourage people to use the Just recipes to do the things. The thing is, podman has docker-compose like management built i", "context": "", "use_case": "task runner for dev services", "switched_from": "", "story": "Podman v6.0.0"}, {"id": 748691024, "item_id": 46793189, "url": "https://news.ycombinator.com/item?id=46793189", "by": "embedding-shape", "date": "2026-01-28", "stance": "recommend", "quote": "I've started to embrace Just (https://github.com/casey/just) which is basically just a simpler Make.", "excerpt": "> My monorepos have become increasingly multilingual over the years, often due to dependencies, and it's not uncommon to find a make file, cargo.toml, package.json, deno.json, venv + requirements.json, etc. all living in the same root. Same! Usual move used to put everything in Makefile, but after getting traumatized time and time again from ever-growing complexity, I've started to embrace Just (https://github.com/ca", "context": "works across teams", "use_case": "project task runner", "switched_from": "Make", "story": "Make.ts"}]}, {"label": "Maturity", "summary": "Called a mature, well thought out Make alternative, especially where Make on Windows is painful.", "quotes": [{"id": 761989024, "item_id": 47624314, "url": "https://news.ycombinator.com/item?id=47624314", "by": "axegon_", "date": "2026-04-03", "stance": "recommend", "quote": "just[1] is now a very mature and well thought out alternative.", "excerpt": "I used to do that but there are a few catches. As much as I brush off people who use any OS other than Linux, there is a time when you will have to do something on another operating system. A lesson I learned the hard way: Make on Windows sucks royally. While I agree with the general idea and I also tend to be conservative about new technologies (even more so with all the slop-coding lately), just[1] is now a very ma", "context": "", "use_case": "task runner", "switched_from": "Make", "story": "Show HN: Home Maker: Declare Your Dev Tools in a Makefile"}]}], "caveats": [{"label": "Narrow scope", "summary": "One commenter later preferred mise because it also manages tools and environment variables.", "quotes": [{"id": 786592096, "item_id": 49162006, "url": "https://news.ycombinator.com/item?id=49162006", "by": "kstrauser", "date": "2026-08-03", "stance": "recommend", "quote": "And then I use Just for a week and become a diehard fan.", "excerpt": "I was on the \"just use makefiles\" boat way too long, except it was Just at the time that was calling for my attention. At first glance, they look similar. Make's already there, so what's the big deal? And then I use Just for a week and become a diehard fan. Yeah, it's similar to make, except optimized for developer ergonomics instead of feature completeness. What if... the tool actually supported and encouraged you i", "context": "", "use_case": "task runner", "switched_from": "make", "story": "Use Task Runners for Common Coding Tasks"}]}], "who": [{"by": "BeetleB", "context": "senior team member", "url": "https://news.ycombinator.com/item?id=48863334", "date": "2026-07-10"}, {"by": "embedding-shape", "context": "works across teams", "url": "https://news.ycombinator.com/item?id=46793189", "date": "2026-01-28"}], "tags": ["Make replacement", "for teams", "for polyglot monorepos", "for CI scripts"], "use_cases": ["task runner", "command runner", "onboarding and task automation", "task runner for dev services", "task runner for ci steps", "structured scripting"], "compared": [{"slug": "make", "name": "Make", "co": 5, "switched_from": 3, "switched_to": 0}, {"slug": "mise", "name": "mise", "co": 3, "switched_from": 0, "switched_to": 2}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49158287", "title": "Use Task Runners for Common Coding Tasks", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49331033", "title": "Ask HN: Alternatives to GitHub", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48857230", "title": "In Emacs, Everything Looks Like a Service", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48762098", "title": "Podman v6.0.0", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47845274", "title": "Using Changesets in a polyglot monorepo", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47602040", "title": "Ask HN: What dev tools do you rely on that nobody talks about?", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {"neutral": 1}, "2026-02": {}, "2026-03": {}, "2026-04": {"recommend": 3}, "2026-05": {}, "2026-06": {}, "2026-07": {"recommend": 2}, "2026-08": {"recommend": 3}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 789412416, "item_id": 49338276, "url": "https://news.ycombinator.com/item?id=49338276", "by": "nine_k", "date": "2026-08-17", "stance": "recommend", "quote": "But sometimes it's applied properly!", "excerpt": "But sometimes it's applied properly! https://github.com/casey/just", "context": "", "use_case": "command runner", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 786601792, "item_id": 49162612, "url": "https://news.ycombinator.com/item?id=49162612", "by": "Arrowmaster", "date": "2026-08-03", "stance": "recommend", "quote": "I have been using just for some projects and really like it.", "excerpt": "I have been using just for some projects and really like it. I looked at mise to replace direnv in the few places I use it, but between mise trying to do so many things and the in terminal advertisement for a problematic company I want nothing to do with, I have halted all plans I had for learning more about mise.", "context": "", "use_case": "task runner", "switched_from": "", "story": "Use Task Runners for Common Coding Tasks"}, {"id": 786592096, "item_id": 49162006, "url": "https://news.ycombinator.com/item?id=49162006", "by": "kstrauser", "date": "2026-08-03", "stance": "recommend", "quote": "And then I use Just for a week and become a diehard fan.", "excerpt": "I was on the \"just use makefiles\" boat way too long, except it was Just at the time that was calling for my attention. At first glance, they look similar. Make's already there, so what's the big deal? And then I use Just for a week and become a diehard fan. Yeah, it's similar to make, except optimized for developer ergonomics instead of feature completeness. What if... the tool actually supported and encouraged you i", "context": "", "use_case": "task runner", "switched_from": "make", "story": "Use Task Runners for Common Coding Tasks"}, {"id": 781813345, "item_id": 48863334, "url": "https://news.ycombinator.com/item?id=48863334", "by": "BeetleB", "date": "2026-07-10", "stance": "recommend", "quote": "Everything the team did (including onboarding), had to be done via a just[1] recipe.", "excerpt": "I can somewhat sympathize - I guess the debatable aspect is to what extent should you teach? If someone knows no development tools, then yes, it is good if someone in the team knows Visual Studio Code and can guide them. In my previous job, another senior person knew it and helped out (VSCode was not mandated, and they were free to use some other tool). I tend to focus on training people on the concepts (code navigat", "context": "senior team member", "use_case": "onboarding and task automation", "switched_from": "", "story": "In Emacs, Everything Looks Like a Service"}, {"id": 780298785, "item_id": 48768674, "url": "https://news.ycombinator.com/item?id=48768674", "by": "yoyohello13", "date": "2026-07-02", "stance": "recommend", "quote": "run \u2018just services\u2019 and it all \u201cjust works (tm)\u201d", "excerpt": "We have a consistent wsl image for everyone. So they are all on Linux. Then we have a podman pod defined in a bash script. We have a Justfile where you can run \u2018just services\u2019 and it all \u201cjust works (tm)\u201d. Once the pod is defined you can use \u2018podman pod up/down\u2019 to interact with it, but mostly we encourage people to use the Just recipes to do the things. The thing is, podman has docker-compose like management built i", "context": "", "use_case": "task runner for dev services", "switched_from": "", "story": "Podman v6.0.0"}, {"id": 765532627, "item_id": 47845789, "url": "https://news.ycombinator.com/item?id=47845789", "by": "sshine", "date": "2026-04-21", "stance": "recommend", "quote": "As the author, I also love `just` and I have the CI steps as `just fmt`, etc.", "excerpt": "I handle polyglot monorepos using Nix. Because Nix is a package manager not tied to one programming language ecosystem, I can install all the tools for every language I need, and have the tooling consistent and modular, even between monorepos. For formatting I usee treefmt-nix, which quickly format all syntaxes in my repo (.nix, .rs, .md, etc.) by calling individual formatters (installed via Nix), such as rustfmt, md", "context": "", "use_case": "task runner for CI steps", "switched_from": "", "story": "Using Changesets in a polyglot monorepo"}, {"id": 764116657, "item_id": 47757291, "url": "https://news.ycombinator.com/item?id=47757291", "by": "mcevoypeter", "date": "2026-04-13", "stance": "recommend", "quote": "for more structured scripting.", "excerpt": "1. https://github.com/junegunn/fzf for fuzzy search. Great for easily searching and selecting git branches + tags + commits, commands from shell history, files, shell jobs, processes, etc. 2. https://github.com/casey/just for more structured scripting.", "context": "", "use_case": "structured scripting", "switched_from": "", "story": "Ask HN: What dev tools do you rely on that nobody talks about?"}, {"id": 761989024, "item_id": 47624314, "url": "https://news.ycombinator.com/item?id=47624314", "by": "axegon_", "date": "2026-04-03", "stance": "recommend", "quote": "just[1] is now a very mature and well thought out alternative.", "excerpt": "I used to do that but there are a few catches. As much as I brush off people who use any OS other than Linux, there is a time when you will have to do something on another operating system. A lesson I learned the hard way: Make on Windows sucks royally. While I agree with the general idea and I also tend to be conservative about new technologies (even more so with all the slop-coding lately), just[1] is now a very ma", "context": "", "use_case": "task runner", "switched_from": "Make", "story": "Show HN: Home Maker: Declare Your Dev Tools in a Makefile"}, {"id": 748691024, "item_id": 46793189, "url": "https://news.ycombinator.com/item?id=46793189", "by": "embedding-shape", "date": "2026-01-28", "stance": "recommend", "quote": "I've started to embrace Just (https://github.com/casey/just) which is basically just a simpler Make.", "excerpt": "> My monorepos have become increasingly multilingual over the years, often due to dependencies, and it's not uncommon to find a make file, cargo.toml, package.json, deno.json, venv + requirements.json, etc. all living in the same root. Same! Usual move used to put everything in Makefile, but after getting traumatized time and time again from ever-growing complexity, I've started to embrace Just (https://github.com/ca", "context": "works across teams", "use_case": "project task runner", "switched_from": "Make", "story": "Make.ts"}, {"id": 745859425, "item_id": 46616214, "url": "https://news.ycombinator.com/item?id=46616214", "by": "embedding-shape", "date": "2026-01-14", "stance": "neutral", "quote": "Typically I use a single Makefile/Justfile", "excerpt": "> Do you use the proprietary github actions stuff? If I can avoid it, no. Almost everything I can control is outside of the Microsoft ecosystem. But as a freelancer, I have to deal a bunch with GitHub and Microsoft anyways, so in many of those cases, yes. Many times, I end up using https://github.com/actions/cache for the clients who already use Actions, and none of that runs in the local machines at all. Typically I", "context": "freelancer", "use_case": "running tests", "switched_from": "", "story": "I Hate GitHub Actions with Passion"}]}