Ditching the Theme Toggle: System Theme Detection in Astro
How I built system theme detection for my portfolio — an inline script for flash prevention, React hooks for reactive switching, and Shiki dual-theme syntax highlighting.
Writing on topics I'm passionate about.
How I built system theme detection for my portfolio — an inline script for flash prevention, React hooks for reactive switching, and Shiki dual-theme syntax highlighting.
What it's like switching from TypeScript to Go for an API project — the good, the painful, and the surprisingly ergonomic PostGIS queries.
I've rebuilt my portfolio three times: Gatsby, Next.js, and now Astro. Here's the journey and why Astro is the one that stuck.
What Model Context Protocol actually looks like in production — lessons from integrating MCP into Gameplan Network and Milli, beyond the hype.
A practical guide to running LLMs locally on Mac using MLX — what works, what's fast, and why local inference matters for developers.
How I built Transcriber I Hardly Knew Her — a privacy-first transcription app that records and transcribes audio entirely in the browser using Whisper.cpp compiled to WebAssembly.
Building Diaper Diaries — an Expo app that helps parents track and teach their newborns' bathroom patterns. Built out of necessity at 3am.
Why I picked Electrobun over Electron for a desktop PDF signing app with PKCS#11 smart card integration, and what the Bun-native desktop experience is actually like.
How prisma-erd-generator went from a weekend hack to 1000+ stars, 64 forks, and 23 contributors — and what I learned maintaining open source along the way.
Using an existing REST API we'll learn how to create a GraphQL API around our existing services instead of a complete rewrite of our API.
Why GraphQL is a useful API specification
The time has come to upgrade and although the team says there are no new changes, development speed will increase for many
When contributing to open source repositories you often need to catch up your fork of that repository to submit a contribution. Here's how to do it
Tailwind takes writing CSS down to a fraction by providing many easy to use classes so you can focus on functionality over flash. In this walk through I'm going to be covering how to add Tailwind CSS to a Gatsby project
Everyone needs to script a process to become more efficient. If we frequently update a script it's nice to have documentation and completion. Typescript is a powerful tool to make lookup and updating quick and easy. Lets implement it!