My Projects

A collection of projects I've built.

Resize Responsibly

Resize Responsibly

A domain-wide crawler that captures fully responsive screenshots of every page you own—spot layout break-points before your users do.

Next.jsSeleniumWeb ScrapingUI Automation

Resize Responsibly traverses your (sub)domain and captures screenshots at multiple viewport widths, helping you catch responsive design issues before they go live.

Kilometerschrijven

Kilometerschrijven

A smart proxy between Google Sheets and Google Maps that logs business mileage, caches distance look-ups and gracefully handles API quota limits—bookkeeping without the busywork.

Google APIsNode.jsCaching StrategiesOAuthRate limiting strategies

Mileage Bridge seamlessly syncs your business trip data from Google Maps into Google Sheets, applying intelligent caching and fallback for the Maps API to keep your logs accurate without exceeding quotas.

Map My Chat

Map My Chat

Turns raw WhatsApp conversations into interactive timelines, heat-maps and word clouds, giving you instant visual insights into your chats.

Data VisualizationP5jsJavascriptNatural Language Processing

MapMyChat parses exported WhatsApp conversation histories and generates interactive timeline charts, heat maps, and word clouds, letting you explore your chat patterns visually.

TypeScript Playground

TypeScript Playground

A playground for testing out AST transformers for TypeScript.

TypeScriptASTCode TransformationCompiler Design

TypeScript Playground is an interactive environment for experimenting with Abstract Syntax Tree (AST) transformers for TypeScript. Test, debug, and visualize code transformations in real-time.