Skip to content

Just and new features: docs, lua, test #9

Description

@thvl3

Migrated from PR: thvl3/BAR-Devtools#5
Original author: @keithharvey
Created: 2026-03-16T09:07:37Z
Status: Open


Add Just as task runner; decompose devtools.sh

Introduce Just as the cross-repo task runner and break devtools.sh into modular scripts.

Old New
./devtools.sh up lobby just services::up lobby
./devtools.sh clone extra just repos::clone extra
./devtools.sh engine build linux just engine::build linux
./devtools.sh repos just repos::status
./devtools.sh link just link::status

The Justfile uses mod for domain-based namespacing (services, repos, engine, setup, link), with bash logic extracted into scripts/. This keeps each .just file focused on interface and delegation.

Motivation

I want to add lua-library generation, doc serving, and test runner recipes (next PR), and the 997-line monolith won't scale.

All existing devtools.sh commands are preserved under namespaced modules:

image

Why Just

Mise might seem like the default option here, since Recoil already uses that in its doc pipeline

However:

  1. Just is by design JUST a runner -- we're composing commands, not managing tool versions.
  2. Docker already handles environment provisioning, so mise's tool and configuration management adds no value at this layer.

By design, Just prevents adding configuration here and keeps it purely idempotent bash scripts with some helpers.

Tests

Set up a new machine on my mac. Tested most of these existing and new commands at least once on my linux machine.

LLM Disclosure:

Yes. Gave opus 4.6 "refactor to use Just without changing existing functionality" for the initial conversion commit and it did a decent job

Metadata

Metadata

Assignees

No one assigned

    Labels

    migrated-prMigrated from thvl3/BAR-Devtools

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions