Evolving set of shfmt-conformant, bats-tested, shellcheck-linted tools, templates, and more.
uv tool install just-bashit # or: pip install just-bashitThat puts three commands on PATH: jb (top-level CLI), jbx (ephemeral
runner — fetch a script, call a function, discard), and jb-inspect.
Nothing needs installing to use a script. jbx fetches on demand:
jbx install-deps # install this repo's packages
jbx make-run mk-var -C ~/doppler DOCS_BUILD_CMDA release package contains shell libraries along with script and function templates for developing your own tools.
just-bashit
+--README.md
+--src/just_bashit/
| +-- datetime.sh
| +-- environment.sh
: :
| +-- function-template.sh
| +-- script-template
+--test-results/
Some libraries depend on others so it's best to use the whole package and source whatever you need, for example:
. just-bashit/src/just_bashit/datetime.sh # contains iso-8601-basic()
iso-8601-basic -d '10:32 AM EDT Jan 5 1982'
19820105T143200Zmake-run resolves a repository's targets and command variables from that
repository's own Makefile, so nothing downstream has to carry a second copy
of a command that will drift from it:
jbx make-run mk-var -C ~/doppler DOCS_BUILD_CMD
# uv run --group docs zensical build --clean --strict
jbx make-run mk-run -C ~/doppler docs # run it, whatever it isAn undefined variable is an error, never an empty string — see the docs.