This repository contains Builderbot apps, shared UI packages, and Rust crates.
# from repo root
source ./bin/activate-hermit
just setupjust setup runs lefthook install and pnpm install.
Then run an app:
just dev # start Mark
just dev staged # start StagedFor end-user installs:
- Mark (macOS):
curl -fsSL https://raw.githubusercontent.com/block/builderbot/main/apps/mark/install.sh | bash - Staged: no standalone installer yet; run from source with
just dev stagedor build withjust app staged build
The root justfile supports both styles:
just dev staged # verb-first (recommended for humans)
just app staged dev # explicit delegation formUseful commands:
just apps # list app names
just setup # first-time setup (hooks + JS deps)
just dev # run Mark app
just dev staged # run Staged app
just mark # alias for `just app mark dev`
just staged # alias for `just app staged dev`
just check # full non-modifying checks
just ci # alias of `just check`
just fmt # format repo
just lint # lint repo
just test # run Rust workspace testsapps/mark: main desktop app.apps/staged: standalone staged/diff app.packages/diff-viewer: shared Svelte diff viewer package.crates/: shared Rust crates.scripts/: helper scripts used by app tooling.
Each app has its own justfile for app-specific workflows:
apps/mark/justfileapps/staged/justfile
Use root delegation to run any app recipe:
just app mark ci
just app staged buildjust: command not found- Run
source ./bin/activate-hermitin your shell.
- Run
- Frontend waiting on dev server / port issues
- Check listeners:
lsof -nP -iTCP:<port> -sTCP:LISTEN
- Check listeners:
node_modulesappears at repo root- Expected for this
pnpmworkspace monorepo; appnode_modulesentries are symlinked into the root store.
- Expected for this
- Mark app docs:
apps/mark/README.md