A.I. Tools & Projects

I share exactly zero of these as public repos because I am embarrassed. And also who knows what PII lurks beneath the surface!

Case Study : ISP FUX - An ISP Monitor

I use a website calling pinging.net when I am troubleshooting naughty ISP issues. It's a great website. But what's always bugged me is that I can't access it if I'm... offline. The trick is to load the website when you have internet and keep it running when you don't. 

I also use a variety of Speed Test tools to check how my speeds are doing. If I'm paying for 1000 down, I want 1000 down when I'm wired to LAN (and close to 1000 down when I'm on WiFi that supports that speed). 

I've never liked the way that Google's Speed Test is handled. Speedtest.net, while very accurate, has advertising that's annoying and that can contribute to your issues when you're debugging naughty internet. 

Enter ISP FUX, a tool I made in a weekend week and a half using Claude. The tool runs in the background and has a UI in your browser. 

It monitors my pings over a custom interval. 

It also has a Bandwidth Calculator to tell me how long something will take to download or upload based on my most recent tests (assuming whatever service I'm using can take advantage of the full bandwidth). I am frequently needing to calculate stuff like "it'll take 22 minutes to upload this 10 GB file" or whatever so this is very useful. 

The Speed Test here took a bunch of time. Single tests vs. simultaneous tests. Where I'm running the test to/from. Etc! Each test runs three phases against Cloudflare's speed test infrastructure. Ping fires 5 small requests and takes the median round-trip time to filter out outliers. 

Download opens parallel streams simultaneously, 2–10 depending on the file size you picked, across two independent sources (Cloudflare and Cachefly); the first 750ms of each stream is discarded to let TCP slow-start settle, then sustained throughput is measured on the remainder. If a source stalls for 4 seconds with no incoming bytes it's aborted and flagged. The headline download figure is the best result across both sources, not an average. 

Upload works the same way, parallel streams of random bytes sent to Cloudflare's endpoint, warmup discarded, sustained rate reported. The whole test is run server-side by the Node process, so your browser's overhead doesn't affect the numbers, and results are stored locally in SQLite for correlation against your packet loss history.

image.png

Here's the ping history:

image.png

Additionally, the tool tracks the history of all the pings and Speed Tests. 

image.png

The Speed Tests will auto trigger tests either on a schedule and/or based on a failure trigger. 

image.png

Per usual, I also have a changelog, as of this writing, it's at v0.0.32. That's a lot of effort for a tool to just keep tabs on a naughty ISP

image.png

Case Study : YT-DLP-IS-TOPS Streamin' Video Downloadin'

If you're like me, you've been using some version of youtube-dl for lat least a decade. You've also probably used it in bursts, for a specific project or thing, and then forgotten the structure, and then re-learned it. Over and over again! Youtube-dl eventually died and then rose from the ashes as yt-dlp. It's great!

You've also probably figured out a very specific use case that makes you a repeat customer. But typically it's that you need some clip that your client owns but lost and the best quality version that you can get immediately is on youtube (or vimeo). 

Enter yt-dlp-is-tops, a UI for YT-DLP that allows you to do a lot of things, but doesn't have unnecessary bells and whistles. There are tons of tops (UIs) for yt-dlp, but I didn't like any of them hah. 

I built this on and off over a few weeks with Claude. 

image.png

yt-dlp-is-tops is a lightweight local web app (Node.js + Express, no framework) that wraps yt-dlp and ffmpeg in a clean browser UI, replacing the usual copy-paste terminal workflow for downloading video.

Core workflow

Format & metadata display

Download experience

Subtitle support

Auth support

Settings

Status bar

Check out those pre-requisites!!! Awesome. 

image.png

Casestudy : Up-Scaling, Retouching, & Colorizing from a Bad Source

I wanted a high resolution version of this image and I wanted it to not look cursed or fucked.

This whole process took 6 hours and was hundreds of manual, human steps. I only did a good job because I know the tools. People think - "these tools are shortcuts and they take the artistry out." Trust: it's still a lot of work, and it's very fun and rewarding if you're a fucking dork.  

tour-de-france-1927.jpg

Here are the details of the source image so I'd have something to go on. 

Screenshot 2026-05-14 at 12.12.30 AM.png

First, I researched some newer colorization tools. I tried ones I've used before and new ones, too. They all kinda sucked.

tour-de-france-1927_m8Q19__please_credit[palette.fm].jpg

GPT did a decent job, but couldn't handle the fidelity / quality issues. 

GPT-v1.png

My attempt to improve this manually was good, but not great. 

image.png

If you look carefully here, these dudes look like melting hunchbacks of Notre-Dame and their outfits have "complicated shirt" texturing. Yuck! Truly garbage-in / garbage out. 

image.png

Then, I decided to go back to the source and repair/improve the image in black and white first - focusing on the details I could find, as well as utilizing the research on these cool guys who love cigarettes and biking. What teams they were on, what kind of day it was, etc, etc. 

Best way to do that was to improve the image was to focus on regions. So I individually up-rezzed tons of sections. I used a prompt for each one based on what I could find out about each dude. Like these three guys, but for every single guy in the image. I used Gemini for this by the way. Pretty good. 

LEFT.jpeg

MID-LEFT.jpeg

That stogie looks good

MID-RIGHT.jpeg

This is maybe a little too good : as if Walker Evans happened to be in France for the 1927 tour (Walker would've been 24). 

Then I composited them together in Photoshop. BUENO! 

image.png

This is the original source btw. My version is a little too high-con, but NICE FRIGGIN WORK, me!  

tour-de-france-1927-stage-7-oil-on-canvas-v0-040la01cyz0h1.jpeg.webp

Then, using my up-rez version, I used Gemini to color it (and feeding it prompt research from Claude). Not bad!

Gemini-v3.jpeg

Then I used Photoshop to extend the image so I could reframe it. 

image.png

Throw some grain on that bad boy, adjust the light levels, get rid of that Gemini logo

image.png

Close to final version in-situ - I replaced the ground to warm up the image a bit and I embellished some color details because I wanted a little more going on. 

image.png

10/10 would do this again

Tools used :