Every notable thing I've built or contributed to, organized by the kind of relationship behind it. The selected six on the homepage are the most representative; this is the rest of the iceberg.
Currently building(2)
Collaboration · In development
GigCloser
Autonomous Upwork agent
A supervised AI workflow for Upwork prospecting and client communication. The stateful agent stores jobs, outreach, conversations, decisions, and preferences in SQL, retrieves relevant context before generating proposals or replies, and keeps a human operator in the loop through Telegram.
The multi-tenant 2026 rewrite of Orpheus. Next.js 16 + Prisma + Postgres with Server Actions throughout, NextAuth v5 with WebAuthn and 2FA, Konva-based dynamic seating, RBAC, discount codes, waitlists, memberships, and analytics. Currently in active development.
Built Meeting for Murph: a Next.js 16 platform for analysing sales meetings that ingests transcripts from Vexa and Fireflies, runs LLM-driven analysis via OpenRouter, and surfaces insights through a Supabase-backed multi-tenant interface with BullMQ workers handling the background pipeline. Also contributed to Murph's LinkedIn outreach SaaS: ICP-driven commenting, third-party reply-intent detection, and production-readiness work across auth, RLS, and billing.
Built the Go WebSocket data server ingesting live market data from 7+ major exchanges, including Binance, Bybit, and Coinbase, and normalizing incompatible payloads into a unified internal model. Hardened the high-frequency path by eliminating race conditions and head-of-line blocking, bounding tracker growth, and replacing unsafe database upsert patterns. Also built Sentient Evolve, a multi-agent strategy-evolution workflow that generates, tests, and repairs trading code inside isolated Docker containers using compiler and runtime feedback, and contributed TypeScript/Vue monitoring, charting, and resilient browser automation.
Built a local WebSocket server subscribed to the XRP Ledger stream, processing live transactions to verify NFT ownership and update user roles across Discord and internal databases. Also developed a high-scale Discord bot handling verification and engagement tracking for a 10k+ user community.
Full-stack ticketing platform for a Danish party committee I'm a part of (CVR-registered). QR-code entry validation, real-time attendance, and a custom Webflow to PHP compiler that turns static designs into a dynamic backend. Still hosted and maintained by me. A multi-tenant rewrite is in active development under ticketsystem.
Co-founded an independent music label with my brother. We sign artists, produce releases, and distribute through major streaming platforms. I built the Astro marketing site and the surrounding production tooling.
Marketplace for booking DJs and artists for events and renting music studios. Enhanced the production Flutter iOS/Android app, then built the Next.js web platform from scratch on a Firebase backend with strict Firestore rules, Cloud Functions, and Stripe.
Mobile-first vehicle plate lookup platform spanning a native Kotlin Android app, NestJS API, and Next.js staff console. The app runs CameraX with on-device ONNX plate detection and OCR, local sightings, alert rules, and vehicle lookups, then syncs devices, crop uploads, and verified facts into a multi-tenant backend with imports, review queues, audit trails, and admin promotion workflows.
CLI for translating subtitles between any language pair, powered by LLMs via OpenRouter. Converts between SRT and EBU-TT-D TTML, with parallel translation, sliding-window context for tonal consistency, integrity validation, and a resumption cache for interrupted runs.
PythonOpenRouterSRTEBU-TT-D TTMLLLM translation
Personal Project
travel-aggregator
Travel deal aggregator
Travel deal aggregator built on Next.js with built-in authentication and a credit system. Multi-source ingestion with deduplication.
Next.jsTypeScriptAuth
Personal Project
simple-music-editor
Browser audio mastering tool
Browser-based audio mastering with album export and de-clipping restoration. React + Tailwind v4 frontend with a Python audio processing backend.
ReactTailwind v4PythonAudio processing
Personal Project
suno-bot
Suno music-production toolkit
Toolkit for the Suno music-generation platform. Browser-driven generator that creates tracks by genre and style prompts, an AI lyric refiner using Google GenAI, and hardened driver patterns with retry logic and rate awareness underneath.
TypeScriptPythonPlaywrightGoogle GenAI
Personal Project
event-scraper
Distributed event scraping platform
Aggregates Danish events across multiple ticket and event data sources. Producer-consumer architecture with BullMQ workers, four ingestion strategies (HTML, JSON API, reverse-engineered API, headless browser), AI-augmented extraction for the harder pages, normalized into a Drizzle and Postgres schema.
Reverse-engineered the Danish VTG Skoleskema system to expose my school schedule as an iCalendar feed that Google Calendar can subscribe to. TypeScript and Express with JWT auth and MySQL persistence.
TypeScriptExpressMySQLiCalJWT
Personal Project
chatbot-api
Local-first RAG chatbot
Local-first retrieval-augmented chatbot API with citation parsing and timestamp-aware fact extraction. Built as an exploration of on-premise RAG patterns.
TypeScriptNode.jsRAG
Open source(4)
Open Source · macOS Utility
ChargeControl
Native macOS battery limiter
Swift utility that caps charging to extend battery life. System sounds, plist configuration, and an automated release-notes pipeline, distributed through a dedicated Homebrew tap. Latest release: v1.1.0.
Modern typed async Python wrapper for the Eloverblik energy data API, replacing an abandoned legacy library. Built with httpx and Pydantic, released on PyPI, and supporting both Customer and Third-Party API scopes as well as a companion Home Assistant component.
Complete MoveIt 2 setup for a 6-DOF robot arm under ROS 2 Jazzy. Published as a reference workspace for others getting started with robotics on macOS.
ROS 2 JazzyMoveIt 2Python
Open Source · Minecraft Tooling
OverflowBridge
Discord and Minecraft bridge bot
TypeScript bridge bot that relays chat, player events, and commands between Discord servers and Minecraft game servers in real time. Built on discord.js and minecraft-protocol, with a clean separation between the two platforms.
A handful of tools built for the XRPL Web3 community: a Discord auth bot for XCC token holders using XUMM wallet integration, a tiered airdrop distribution engine that snapshots XRPL trustlines and distributes custom tokens by balance threshold, and a Twitter bot that monitors XRPL NFT sales and auto-posts summaries with compressed media.
TypeScriptXRPLXUMMdiscord.jsTwitter API
Earlier Work · 2021
DeathSwap
Minecraft minigame
Multiplayer Minecraft minigame inspired by Dream's YouTube series: players swap positions every 5 minutes and try to eliminate each other through environmental hazards. Released on mcskripts.net in 2021, written in 362 lines of Skript with the skript-reflect addon for advanced behaviour.
Classroom display app with reverse-engineered APIs
Windows Forms app that displays a classroom schedule and Instagram feed on a school display screen. Built when no official APIs were available: reverse-engineered Viggo's undocumented school API with manual cookie and session handling, and scraped Instagram's embedded JSON to pull post data and profile stats.
C#Windows Forms.NET CoreReverse Engineering
Looking for something not listed here? Plenty of smaller experiments, prototypes, and client work available on request.