Rust-built software for curious people and computers that belong to their users.
Local-first · Linux / Wayland · Agent-friendly · Thoughtful interfaces
I build tools that make the computer feel more like an instrument and less like an obstacle. My work ranges from tiny, fast desktop utilities to ambitious systems for reading, preserving, organizing, and manipulating information.
I like Rust, native Linux applications, durable local state, inspectable behavior, and software that respects attention. I use AI extensively to develop software, and I design for human and agent collaborators: clear architecture, reproducible tests, explicit permissions, and machine-readable interfaces. MCP is useful when it serves those goals, not a requirement for every application.
I care about the engineering and the feeling of using the thing. Serious internals can still produce cozy, playful software.
My projects cross disciplines, but they share a habit: take a complicated system, understand its structure, and make it programmable. Software is both the thing I build and the instrument I use to investigate other fields.
Computing & engineering
- Systems and native desktop software — Rust, Linux/Wayland, performance-sensitive interfaces, storage, process boundaries, security, and practical developer tools.
- AI-native development and automation — agent-oriented APIs, MCP interfaces, inspectable tool execution, permission models, reproducible tests, and human-in-the-loop workflows.
- Knowledge and data infrastructure — ontologies, schema design, corpora, extraction pipelines, provenance, archival systems, search, and structured research data.
- Speech, graphics, and interactive media — local ASR/TTS, diarization, ebook tooling, computational geometry, visualization, emulation, and playful desktop UX.
Mathematics, language & the world
- Mathematics and formal systems — discrete structures, symbolic computation, number theory, geometry, and constructive computational models.
- Linguistics and language technology — morphology, grammar, pronunciation, phonetics, dialects, translation, textual corpora, and writing tools.
- History and human institutions — law, political economy, governance, historical evidence, and the ways institutions evolve.
- Time and empirical systems — calendars, historical events, elections, sports leagues, longitudinal data, and the relationship between observations and models.
I particularly enjoy the space between disciplines: where messy source material becomes an explicit model, where a model becomes a tool, and where a tool gives its user more agency.
Flagship research system — Taria
Taria is my private knowledge federation: an expanding network of independent research domains covering linguistics, mathematics, law, economics, philosophy, AI, biology, engineering, politics, and the arts. Each domain develops its own ontology and evidence-backed research, while the larger system supports explicit cross-disciplinary connections and derived works.
The canonical Taria repository is private and not publicly accessible. Read the public project overview →
| Chatarium | A local-first Rust conversation workstation: durable message state, recoverability, and a path toward user-controlled AI tooling. |
| Morphos | Declarative 3D geometry with a shared Rust workspace model for desktop editing, automation, and reviewable AI changes. |
| Ephemeris | A programmable calendar and temporal-information system where canonical events can appear in many different views. |
| LanternLeaf | A reading environment for books and documents with local Piper speech, synchronized highlighting, and a little personality. |
| Glyphflick | A blink-fast Wayland glyph picker. Summon, find, copy, disappear. |
| Starbyte | An experimental, comfort-first SNES emulator in Rust. Fun and desktop experience matter more than chasing perfect cycle accuracy. |
OTPick · Encrypted, low-latency Linux TOTP picker
Lexwright · A local-first English writing instrument
Vessel · Rust control plane for media transcription and research text
Mirrarium · Durable browser capture and local caching experiments
Caliberate · A Rust-native, still-in-progress ebook platform
human intent
→ clear interfaces
→ explicit permissions
→ durable local state
→ inspectable and reversible actions
My default: build the core in Rust; reuse mature tools where appropriate; make the fast path actually fast; keep data portable; and document what works, what doesn't, and what is still experimental.
Make it useful. Make it understandable. Make it a pleasure to use.



