I track thirteen active projects as git submodules in a single workspace. Here’s where each one stands and what it does.
| Project | Last Update | Language | What it is |
|---|---|---|---|
| cf | now | Hugo/Py | This site; Hugo + Cloudflare Worker across 33 domains |
| acts | now | Shell | Local action workflows |
| rex | now | Go | Desktop file manager; Go + Wails, per-kind intelligence |
| simulator | 10d | Go | simstudio: reactive simulation + SDF sprites |
| narrated | 16d | Python | Multi-agent narrative generation; LLMs + vLLM + Chroma |
| pad-a1 | 17d | Python | Code idiom mining; tree-sitter corpus + Stitch learning |
| qbacktest | 21d | QB64/C | Options backtester; QB64-PE ↔ DuckDB bridge |
| cloops | 21d | Csound | Drum loops for Elektron Octatrack; sample-accurate, click-free |
| chatapp | 23d | Erlang | XMPP playground |
| cv | 24d | Python | Computer vision experiments |
| decentweb | 24d | TypeScript | Decentralized web node; DHT-based content, zero-JS reader |
| seqcast | 25d | C/jsonnet | MIDI sequencer for Elektron hardware via ALSA |
| theta-seq | 35d | Zig | GPU synthesizer; SID chip emulation on multipass textures |
The Hardware Row
seqcast and cloops live together under gear: seqcast streams MIDI into an Elektron rig (OT/A4/DT) and cloops fills the sample library. Both are production-quality, neither is a sketch.
The Narrative
narrated is a storytelling engine: a narrator LLM sets per-character goals each round, character agents respond in voice, and the narrator weaves responses into prose. Every story is plain markdown with YAML frontmatter — no database, everything diffs cleanly. Uses local vLLM inference and Chroma for style corpus retrieval.
The Sim Stack
simulator (simstudio) is a reactive scientific simulation platform. The core insight is a narrow waist: only the store package (bbolt KV + in-memory fields) touches both the sim tick loop and the renderer, so they never import each other. M0–M3 (store, Conway kernel, X11/EGL windowing, hand-rolled IMGUI) are live-verified. M4 (Simulation Objects in Starlark) is built and runnable. M5 (SDF sprite rendering) is compiled and type-checked; the GL pass was live-tested once on the user’s desktop and found three real bugs, now fixed — but nothing has re-confirmed a live run in this sandbox since.
The Code Mining
pad-a1 mines Python and C corpora for the idiom vocabulary programmers actually use, by compression. Stages 1–2 (acquire, parse) have run at full scale: ~400k files, a 26GB blob store, 14GB of tree-sitter AST tables with Merkle hashes. US-0–US-3 are done (paper reproduction, function-unit extraction, canonicalization, tier-1 mining with a browsable web UI). US-4 (Stitch abstraction learning) harness is built and verified; the full multi-hour run hasn’t been launched yet.
The Synthesizers
theta-seq models synthesizer circuits on the GPU with multipass textures. It’s written in Zig — no Python, no other tooling. Currently explores SID chip emulation with complex FM routing between voices.
decentweb is a BitTorrent-like node for long-form static content. Everything is content-addressed and fetched over HTTP from mirrors that can never alter a byte (signatures verify on arrival). The reader UI is zero-JavaScript, zero outbound requests, and runs in a browser or on a phone with no app install.
The Backtester
qbacktest bridges QB64-PE BASIC to DuckDB via a C wrapper (libduckdb_wrapper.so). The strategy: query gigabytes of Parquet tick data directly from QB64 without CSV round-trips. Includes a full bull-call-spread backtest in native BASIC and a migration pipeline for Algoseek’s 508 GB options dataset.
The Utilities
rex is a single-user desktop file manager, Go + Wails. Files are the source of truth; the database is a rebuildable SQLite index. It knows about many file kinds (images, video, audio, documents, code) and can extract metadata, generate thumbnails, and preview in-app.
cf is this site: Hugo, Cloudflare Workers, Terraform. It auto-deploys on save and handles forms via GitHub dispatch events. Hosts both long-form posts and short notes, plus standalone games (shader-based, two-canvas architecture with PixiJS UI over WebGL).
acts is a collection of local action workflows — quick shell utilities.
The Playground
chatapp and cv are exploration spaces. The former is an XMPP client in Erlang; the latter is computer vision sketches in Python.