15+ years of building software, always exploring new tech, and sharing what I learn along the way. Currently interested in how LLMs and agents fit into development workflows.
Languages: TypeScript, PHP, Rust, Swift, Go, Python
Cloud: AWS (Lambda, CDK, Fargate, EventBridge), Cloudflare, Terraform, Serverless Framework
Interests: Language design, agentic development, developer tooling, personal software
serverless-fargate Β· 16k+ weekly downloads
Maintain long-running Fargate ECS tasks within your Serverless project.
phpboy Β· Game Boy Color emulator in PHP 8.4
Full DMG backward compatibility, high accuracy (100% Blargg pass rate), and multiple frontends (CLI, WebAssembly, SDL2).
c3 Β· Chess engine in C++23
Educational chess engine with magic bitboards, iterative deepening, alpha-beta pruning, transposition tables, and UCI protocol.
pwa-kit Β· PWA to native iOS
Turn your Progressive Web App into a native iOS app with full access to native capabilities.
Autonomous agents and developer tools:
| Project | Description |
|---|---|
| jeeves | Personal AI assistant in Telegram, powered by Claude. Self-extending via skills and persistent memory |
| my-own-coding-agent | Educational Python coding agent with provider-agnostic LLM support and extensible tool suite |
| revu | Desktop Git diff reviewer with inline commenting for AI coding agent workflows |
MCP servers and CLI tools (with agent skills) β exploring different ways to connect LLMs to the real-world:
| Service | MCP | CLI |
|---|---|---|
| Garmin Connect | garmin-connect-mcp | garmin-connect-cli |
| Strava | strava-mcp | strava-cli |
| whatsapp-mcp | whatsapp-cli | |
| Obsidian | obsidian-mcp | - |
| Intervals.icu | intervals-icu-mcp | - |
A functional programming language built for Advent of Code. What started as a single interpreter grew into a complete language ecosystem spanning multiple implementations, compilers, and tooling.
| Repository | Description | Language |
|---|---|---|
| santa-lang | Language specification and documentation | - |
| Comet | Tree-walking interpreter with CLI, WASM, Lambda, PHP, and Jupyter runtimes | Rust |
| Prancer | Tree-walking interpreter with CLI, Web, and Lambda runtimes | TypeScript |
| Blitzen | Bytecode VM compiling to FrostByte for optimized puzzle solving | Rust |
| Dasher | LLVM-based AOT native compiler for optimized machine code | Rust |
| Donner | JVM bytecode compiler generating optimized bytecode via ASM | Kotlin |
| Tinsel | Opinionated code formatter with CLI and WebAssembly runtimes | Zig |
| Workbench | Desktop IDE with multi-reindeer execution, benchmarking, and AoC integration | TypeScript |
| Tool | Description |
|---|---|
| phpx | Run PHP scripts with inline dependencies. Like npx/uvx for PHP |
| buns | Run TypeScript scripts with inline npm dependencies - no package.json needed |
| turbo-png | Fast lossless PNG optimization and lossy compression with Zopfli and imagequant |
Native Swift/SwiftUI apps, available via Homebrew:
| App | Description |
|---|---|
| VoiceScribe | Privacy-first transcription with global hotkey, on-device WhisperKit + MLX |
| ClaudeMeter | Track Claude.ai plan usage in real-time with session limits and smart notifications |
| ClipVault | Secure clipboard manager with AES-256 encryption, smart filtering, and rich text |
| CaffeineMate | Keep your Mac awake with configurable timers, global shortcuts, and display control |
| Wav | iOS labor contraction timer with Live Activities, Dynamic Island, and real-time guidance |
| Ovlo | Guided breathing exercises, meditations, and ambient music for iPhone and Apple Watch |
| Product | Description |
|---|---|
| MyPodcast | Turns saved articles and YouTube videos into a narrated podcast feed |
| Chessmate | Multi-engine chess analysis PWA with online and local (WASM) engines |
| DailyThing | Personalised, bite-sized content throughout the day |
| Name That Color | Point your camera at anything to get its color name, HEX, and RGB |
| Secret Santa | Organise draws with exclusions, gift ideas, and anonymous messaging |
- π eddmann.com - Projects, weeknotes, and things I'm building
- ποΈ Compiled Conversations - Interviewing people shaping software and technology
- ποΈ Three Devs and a Maybe (2013-2019) - 160+ episodes on software development
More Projects
| Project | Description | Tech |
|---|---|---|
| Rubik's Cube Solver | Thistlethwaite's algorithm with 3D visualization | Rust, React, Three.js |
| advent-of-code | Solutions to the annual Advent calendar of programming puzzles | Various |
| Our Wedding Website | Because every RSVP website needs DDD, CQRS, Hexagonal Architecture, and Event Sourcing | PHP, Terraform |
| Secret Santa Series | Same draw, different platforms | Arcade Β· Game Boy Β· Step Functions |
| f1-picks-2026 | Family F1 driver picking game. React 19 + Cloudflare Workers + Hono + D1 | TypeScript |
| step-wars | Fitness challenge app where friends compete by tracking daily steps | TypeScript |
| Project | Description |
|---|---|
| pico-2fa-totp | Raspberry Pi Pico/MicroPython 2FA TOTP generator |
| pico-secret-santa | Raspberry Pi Pico/MicroPython/SIM800L Secret Santa allocator |