Münster, Germany | currently doing my M.Sc. in Information Systems @ FH Münster
I'm somewhere between two poles: using AI to move fast and ship a lot, and still caring about the craft - clean boundaries, typed code, things built to actually last rather than just work once. Most of what's here comes out of that tension.
Also kinda obsessed with voice-driven applications.
- 🗣️ rtvoice - Framework for real-time voice agents on OpenAI's Realtime API
- 🎙️ cara - Realtime voice agent, ports-and-adapters, middleware (path policy, guardrails)
- 🎤 vocalbin - Typed async STT/TTS wrapper with up-front capability validation
- 🎧 realtime-whisper - Async client for OpenAI Realtime transcription
- 👂 wakewordkit - Wake word detection built on openWakeWord, with a pluggable audio input API
- 🔊 sonosify - Sonos control over UPnP and the S2 API, with a Cloud Integration (playback, queue, groups, events)
- 💡 hueify - Event- and cache-based, performance-optimized Philips Hue CLIP v2 API and CLI
- 🌅 huerise - Hue tooling
- 🤖 llmify - Type-safe Python library for OpenAI, Azure OpenAI, Anthropic
- 💰 tokenary - LLM API cost calculation based on the LiteLLM model catalog
- 🧬 cdpify - Type-safe Chrome DevTools Protocol client with Pydantic models, including a codegen tool that generates the client straight from the CDP specification
- ⚙️ openpygen - Python codegen tooling
- 🚌 transitbus - Type-safe async event bus for Python, Pydantic events with automatic parent/child causality
- 🎴 prompster-cli - Generate Hitster-style card decks from natural language prompts and Spotify
- 🎮 prompster-frontend - Web app for playing with self-made Hitster cards
- 🎵 spotifyify - Typed async Spotify client for Python
- 📝 notionary - Markdown → Notion, built for Python developers and AI automation
- ⚖️ withings-client - Withings smart scale data
- 🖼️ unsplash-wrapper - Simplified interface for the Unsplash API



