I build web frontends, full stack web applications and the platforms underneath them: React and TypeScript, micro-frontends, design systems. Currently I'm very interested in how to build software with AI agents in a way that is reproducible and reviewable and how much of the process can be automated while staying in control.
trails is my workflow I currently use a lot: a spec → plan → implement process, packaged as agent skills for Claude Code and Codex and as an npm package for automated runs. Each step writes plain markdown into specs/, committed alongside the code, so agent work can be reviewed like any other change and picked up again in a later session. It's similar to OpenSpec, which I also like and use.
My next goal: building a whole software factory on top of this workflow.
teikei / Ernte Teilen. I co-initiated teikei in 2013 and still maintain it together with sjockers. It's the open-source map and API behind Ernte Teilen, which uses crowdsourced data to connect people with community-supported agriculture farms and initiatives in Germany, Switzerland and Austria.
We recently launched a Svelte rewrite of the frontend on our main site, built end to end with agentic workflows. We are currently rolling out the new frontend to our partner sites and we're also modernizing the backend, replacing the legacy ORM with Kysely.
Datenguide (2019, no longer active). I worked on this open-source project, funded by the Prototype Fund, to make German official statistics usable for data journalists and the public. I built its first GraphQL and REST APIs and the React UI for querying the data.
20 years, from Java payment systems to frontend platform architecture. Most recently I was working with the frontend platform team at Lexware Office: design system, migration to a Module Federation micro-frontend architecture. I'm also a contributor to module-federation/vite.
TypeScript · React · Node.js · Vite · Module Federation · Tailwind CSS · shadcn · PostgreSQL · Playwright · Vitest · Claude Code · Codex · Dokku · AWS · Docker




