Blog (page 2)

RSS Feed Styles

Now that I’m in my 15th year of blogging it’s past time I spruced up my RSS feed. I’ve also launched a new bookmark blog. Perfect time to revisit RSS. For the last 15 years my RSS feed was an unreadable mess when viewed in a browser: Obviously it’s meant to be viewed in an RSS reader […]

Thought You Knew String Replace?

You know String.prototype.replace() in JavaScript? This method takes two parameters: pattern and replacement. Pattern is usually a string or regular expression. Technically it can be any object with a Symbol.replace method (like a RegExp). Replacement is either a string or function that returns a string. Using a regular expression gives access to capture groups in the replacement. Here I’m capturing […]

Cotton Coder

It’s finally happened! My bookmark blog is back! 🚀 Cotton Coder is live! The curated bookmark blog of web dev curiosities Cotton Coder is launching as a small project with large ambitions. It starts life as my new bookmark blog. A blog I’ve been meaning to revive for a very long time. I used to curate a blog […]

SVG Icons with CSS Masks

Have you ever inlined SVG icons inside a CSS stylesheet? It can improve performance by reducing HTTP requests if done selectively. I do this all the time using a custom property and background-image to make reusable icons. One downside is the inability to change or transition colours easily. I’ve recently discovered a new technique that solves this […]

Buy Me a Coffee!

I’m trying something new this year. In exchange for over a decade of continued blogging and open source content I’m asking for a little something in return. Head over to ko-fi.com/dbushell and show support with a small tip. Tipping is entirely optional, of course! This blog will remain free. I don’t believe adding a hard […]

New Projects for 2024!

Happy New Year! I had free time at the end of 2023. One idea led to another and I ended up writing a new JavaScript web framework. Just what the Internet needs! The first project is a little smaller in scope: VelociRouter VelociRouter is a JavaScript HTTP router inspired by Polka and Hono. It takes a Request and […]

Deferred; Promise with Resolvers

Promise.withResolvers is a new JavaScript spec that’s landing in a runtime near you soon if it hasn’t already. How is it useful? For example, let’s write an asynchronous function that returns your public IP address. We could return a Promise the old way: If you have experience with Promise you’ll know how quickly chaining them leads to […]

Buy me a coffee! Support me on Ko-fi