Skip to content

Getting started

Wraith Box is in its design phase, so for now “getting started” means getting set up to work on it.

  • For the full gate: an Apple Silicon Mac with Xcode installed. Swift, swift-format, and xcodebuild come from Xcode. The Go code also builds and tests on Linux and Windows (mise run go:test etc.).
  • mise, which installs every other pinned tool: Go, linters, bun (docs site).
Terminal window
mise trust
mise install
mise run install # docs site dependencies (and cspell)
Terminal window
mise run ci # lint + typecheck + test + build, offline
mise run vuln # dependency vulnerability scan, needs network

Tasks are namespaced by language: go:test, swift:lint, doc:build. mise tasks lists them all.

Terminal window
mise run doc:dev # dev server at http://localhost:4321/
mise run doc:build # static build into packages/wraithbox-doc/dist
mise run doc:check # Astro type/content check

Pages are in packages/wraithbox-doc/src/content/docs/. Pushing to main deploys the site to GitHub Pages, which serves it at wraithbox.nl, through .github/workflows/deploy.yml.

  • Read the design overview, then the specifications in docs/spec/, starting with 003-requirements.md.
  • Writing pages for adding documentation.