Inside devkit
Its 9 parts, what each runs on, and the lines between them: the containers of the C4 model, inside the system's boundary, and the 1 it works with outside it.
The drawing
The same map as a list
Runs everything
- Capsid The store, the queue, and the credentials every other project runs through. mcp.dustinedwards.info Its page Capsid
Shared parts
- d1-dump shared Backs up each table of a D1 database, keeps the backups on a schedule, and drills the restore. Its page d1-dump
- devkit shared Shared CI workflows, Renovate rules, and test helpers. Its page devkit
- site-runtime shared Security headers, the rate limiter, and the health format that every site imports. Its page site-runtime
- Prelum shared Turns finished writing into pages, feeds, and sitemaps. Its page Prelum
- Capsomer shared The tokens, the shell, and the shared controls every app is drawn with, in plain CSS. capsomer.dustinedwards.info Its page Capsomer
- site-api shared The contract Carrel uses to publish. Its page site-api
Websites
- Dustin Edwards Admin admin Runs dustinedwards.info from a chat, covering health, mentions, media, registries, citations, and lab procedures. Writing stays in Carrel. Its page Dustin Edwards Admin
- Germomics site A podcast and writing site about microbiology and history, with interactive virus and bacteria data pages and browser games. germomics.com Its page Germomics
- dustinedwards.info site Dustin's personal site. dustinedwards.info Its page dustinedwards.info
- TXASM site Runs the Texas Branch ASM meetings: registration, abstract submission and review, the program, and the abstract book PDF. txasm.org Its page TXASM
- julieedwards.info site Julie Edwards's campaign site for the Bluff Dale ISD school board. Its copy lives in D1 and is edited through Carrel. julieedwards.info Its page julieedwards.info
Apps
- Foxing app A reading app and web platform, Letterboxd for books: a web app, an Expo phone reader and a Discord Activity for reading clubs. foxing.app Its page Foxing
- Foxhound Admin admin Runs Foxhound from a chat. It holds no Stripe key and no database: every action is a call to the foxhound Worker's admin API. admin-mcp.foxhoundapp.com Its page Foxhound Admin
- Foxhound app Recovers failed Stripe payments, handles disputes and reports subscription health for merchants, and is paid only on money it recovers. foxhoundapp.com Its page Foxhound
- Foxing Admin admin Runs Foxing from a chat: stats, users, badges, journal posts and catalog health, all through the foxing Worker. Built, not yet deployed. Its page Foxing Admin
Writing
- Carrel writing The writing desk, where drafts are written, checked, and published. carrel.dustinedwards.info Its page Carrel
- Enarratio writing An npm package of charts, with a gallery. enarratio.dustinedwards.info Its page Enarratio
- Writing private Dustin's books: scenes, outlines and story bibles, which Carrel reads and commits through its own GitHub App. Its page Writing
Tools
- Skills tool The instructions AI sessions follow. Its page Skills
- Private skills private Dustin's own session setup, which every AI session loads beside the public skills. Its page Private skills
- capsid-bench tool The study harness that compares Claude Code with and without Capsid on the same tasks, scored on hidden tests. Its page capsid-bench
- Capsid backups private Mirrors Capsid's daily database dumps off Cloudflare every day, so losing the account does not lose the store. Its page Capsid backups
| Part | Kind | Runs on | What it does |
|---|---|---|---|
| worker-deploy workflow | package | Reusable GitHub Actions workflow | Deploys a caller's Worker, gates it live on /health and rolls it back on a refusal. |
| bump-consumers workflow | package | Reusable GitHub Actions workflow | On a package's release, starts a Renovate run in every repository whose manifest depends on it. |
| code-map workflow | package | Reusable GitHub Actions workflow | Publishes a repository's code-map.json to its code-map branch for the Capsid explorer. |
| no-bloat workflow | package | Reusable GitHub Actions workflow | The warn-only Knip and jscpd report against the repository's baseline. |
| ai-author workflow | package | Reusable GitHub Actions workflow | Refuses an AI attribution trailer or a commit authored as Claude. |
| pr-footer workflow | package | Reusable GitHub Actions workflow | Removes the generated footer from pull request descriptions. |
| devkit-check-trailers | package | Node CLI | The trailer and author check, the same on a laptop as in CI. |
| devkit-no-bloat | package | Node CLI | Knip and jscpd counts compared with the baseline. Always exits 0. |
| Renovate preset | package | Renovate config | The one Renovate policy every repository's renovate.json extends. |
Outside it
- GitHub (Repos, Actions, issues): Where callers run the workflows, the Dependency Dashboards bump-consumers ticks, and the code-map branches.
How they connect
- ai-author workflow installs devkit-check-trailers
- no-bloat workflow installs devkit-no-bloat
- bump-consumers workflow writes to GitHub
- code-map workflow writes to GitHub
- pr-footer workflow writes to GitHub