A git branching model that's halfway between GitHub flow and Gitflow.| Ty Hopp
Assorted thoughts about Svelte after a month of use.| Ty Hopp
Explore the strange quirks of how Safari handles dark color scheme preferences in various conditions.| Ty Hopp
Replacing Lerna with npm builtins in the PRPL monorepo.| Ty Hopp
Replacing Cypress with smaller modules in the PRPL monorepo.| Ty Hopp
Finding the optimal balance of tooling for a monorepo of JavaScript modules.| Ty Hopp
How I made my Node module runnable in Deno with import maps and Deno's Node compatibility layer.| Ty Hopp
Brief notes about building a typical API in Rust and Node.| Ty Hopp
Observing Astrill's CGI scripts to implement a custom interface for controlling VPN connection on our router.| Ty Hopp
An ongoing list of impressions I had diving into iOS development with UIKit.| Ty Hopp
A solution to managing keys and revalidation for the SWR library.| Ty Hopp
Finding the best approach for sharing code.| Ty Hopp
Two very similar frameworks that make the PRPL pattern accessible.| Ty Hopp
Offloading JS to a web worker shaved 30ms off this site's Total Blocking Time.| Ty Hopp
Leveraging Contentful in an automated publishing pipeline extends its use beyond expectation.| Ty Hopp
Netlify takes the headache out of hosting and deploying a cloud function from your domain too.| Ty Hopp
Running any code at all in iOS is a feat. But being able to run JavaScript from my iPhone to make a network request on command, that’s a superpower.| Ty Hopp
One of the greatest note taking apps is held back by the very reason for its greatness - a limited, focused feature set. Here’s how I extend it to be my authoring tool for this website.| Ty Hopp
If you want to do video manipulation, ffmpeg will serve you well. One thing always bothered me though - the crosshatch pattern imprinted on GIFs. Here’s how to remove it.| Ty Hopp
A running list of things that you might encounter working with AWS API Gateway.| Ty Hopp
Why I built an automated publishing workflow tailored to my writing process.| Ty Hopp
Build a list in JavaScript, try to apply that method in Swift, realize it doesn't work, and find out how to do it properly in Swift!| Ty Hopp
Trying to create simple utility color variables in Swift led me on a journey of boilerplate and gotchas. But in the end, success!| Ty Hopp
Everything I now own fits in just two large pieces of luggage. But on the internet, this is so much more difficult to do.| Ty Hopp
Replacing Cypress with smaller modules in the PRPL monorepo.| tyhopp.com
Netlify takes the headache out of hosting and deploying a cloud function from your domain too.| tyhopp.com
Running any code at all in iOS is a feat. But being able to run JavaScript from my iPhone to make a network request on command, that’s a superpower.| tyhopp.com
One of the greatest note taking apps is held back by the very reason for its greatness - a limited, focused feature set. Here’s how I extend it to be my authoring tool for this website.| tyhopp.com
Why I built an automated publishing workflow tailored to my writing process.| tyhopp.com