Personal monorepo for active projects, learning, and archived work.
- homelab — Kubernetes homelab (
torvalds): Talos, cdk8s, OpenTofu, ArgoCD app-of-apps - temporal — Temporal worker running the repo's scheduled automation: agent tasks, homelab audits, and PR-opening refresh jobs
- scout-for-lol — Discord bot that tracks friends' League of Legends matches and posts rich post-game reports
- tasknotes — the Facet task app family: shared Rust core, macOS app, Windows app, sync server, and the iOS app
- toolkit — CLI developer tools (
pr,alerts,bugsink,grafana,discord, …) - birmel — AI-driven Discord bot on an explicit agent runtime
- monarch — AI transaction categorization pipeline for Monarch Money
- sjer.red — personal website (Astro)
- astro-opengraph-images and webring — published npm packages
See packages/README.md for the complete package list.
| Directory | Description |
|---|---|
| sandbox/poc/ | Proof-of-concept experiments |
| sandbox/practice/ | Learning projects - books, courses, coding challenges |
| sandbox/archive/ | Archived projects - completed or superseded |
mise install # install pinned toolchain (bun, node, tofu, …)
bun install --frozen-lockfile # one workspace-wide install
bunx turbo run generate # codegen: Prisma clients, etc.
bunx lefthook install # arm git hooks
# Day-to-day: run only the tasks for the package you touched
bunx turbo run typecheck test lint --filter=<pkg>
bunx lefthook run pre-commit # staged-file checks (Prettier, Gitleaks, …)
bun run verify # exhaustive whole-repo gate — what Buildkite runsbun run verify is the CI entry point, not part of the everyday loop; run it
locally only to reproduce a Buildkite failure or when changing the verification
machinery itself.
See CLAUDE.md for detailed development guidance.