Patching NPM Dependencies with pnpm patch
Learn how to patch NPM dependencies with pnpm patch to fix issues with your project.
Tutorials, best practices, and insights on React, Next.js, TypeScript, and modern JavaScript development. From component patterns to performance optimization.
Learn how to patch NPM dependencies with pnpm patch to fix issues with your project.
11-11-2025
Open source doesn't work without good faith - and sometimes you need to patch a dependency to do your part.
Learn how I write and publish content on my Next.js site using Markdown and MDX, and a custom content creation workflow.
I dive into the data from my PostHog AB Test and show you how to interpret the results.
I tackle a significant drop in my newsletter subscribers. Join me as I dive into the data using PostHog, identify and fix critical errors, and ultimately switch from ConvertKit to Resend.
In part two of my product analytics journey, I tackle a subscriber drop, dive into PostHog data, fix key errors, and switch from ConvertKit to the developer-friendly Resend.
This video dives into the process I used to diagnose and debug a conversion problem on my personal website using Posthog, a powerful product analytics tool.
Learn how to seed your Supabase database with this simple pattern.
Canonical tags are a powerful tool to help search engines understand which version of a page is the original one. This can help you avoid duplicate content issues and ensure that your content gets the credit it deserves.
07-09-2024
One of your biggest skills as a person-on-the-internet is your ability to research and learn new things.
Structured Data can be added to your site tell Google and other search engines what type of content is on each page using a metadata format called JSON-LD.
03-26-2024
A look at the cognitive science behind the Hierarchy of Competence, and how dabbling with new frameworks and tools can make you a better developer.
A YouTube live coding stream, learning to build content-driven sites with the Astro Web Framework.
03-12-2024
I hear from a lot of devs that they don't know where to start with SEO. Here are 3 tiny tips about to get you started.
03-05-2024
Reflecting on my first year as CTO of Craftwork, and the many things I've learned along the way.
A YouTube live coding stream where we explore how we use a variety of dynamic images with Next.js using Satori.
A coding livestream where integrate Resend's new Broadcasts feature into my next.js site to use for sending newsletters.
Set up self-healing URLs with the App Router in Next.js for better SEO, accessibility, and usability
05-23-2023
If you haven't been using reddit as a tool for learning, you are truly missing out. It's time to give it a try.
Learn how to add custom fonts to your Next.js app using next/font and Tailwind CSS. Improve user experience without sacrificing performance.
Sometimes fixing a TypeScript or eslint error in VS Code can feel impossible. Here's what I do when I have exhausted all my resources.
Extracting types from a JavaScript object is a common task in TypeScript. This post shows how to do it with VS Code.
01-03-2023
The end of 2022 brought about a ton of change for me, and a major shift in my career. I'm excited to talk a little about what's next, and to show off a side project I'm readying for release soon.
Learn how to sync your About page and your personal GitHub README bio on your Next.js site, as a step towards owning your content on social media.

Use previous issues of your newsletter to attract new subscribers, using the ConvertKit API with your Next.js site.

Learn how to use the ConvertKit API to publish your newsletter to your Remix site.
Implement the Orton Effect in CSS and React. The Orton Effect creates a surreal, dreamy image effect, named after photographer Michael Orton.

I use these tools on every project to help track source code, monitor traffic on my site, and optimize content for better Search Engine Optimization (SEO).

This is the right format to use if you want to add a subtitle below an h1 tag on your html pages. Semantic HTML makes your site more accessible and better for SEO, since it is easier for search engines to process.

Building a website using the Remix.run webb app framework? This tutorial will teach you how to add privacy-first analytics to your Remix site with Fathom.
I migrated apisyouwonthate.com, a site with 20k+ monthly visits, from Gatsby to Next.js at the end of 2021. Let's talk about what I learned from that experience.
This tutorial will teach you how to automatically add links to heading tags in your mdx posts on your Next.js site with a plugin called rehype-slug. This should work for most nextJS sites that use MDX for content, as well as many other JavaScript-based sites which use MDX.

The article discusses the ESLint rule no-floating-promises which disallows promises without await. The rule is designed to prevent developers from accidentally forgetting to await promises, which can lead to unexpected behavior.

Since its release, teams around the world have been using dependabot to automate the process of keeping your project's dependencies up to date. In this article, I'll show you how you can run dependabot on the command line using dependabot-core.
If you're running an Apple Silicon Mac (with an M1, M1 Pro, or M1 Max chip), you may be able to speed up VS Code massively with a quick update.

Buildspace offers free, online, cohort-based courses on building web3 blockchain apps. If you're interested in dipping your toe into the world of Ethereum apps, the blockchain, or NFTs - it's a great starting point.

For years I did a weekly coding livestream of my React and Python work on Twitch every week, and I'm getting back into it again. This is what sticks out to me as the most valuable learnings from those experiences.

Let's take a look at the Nullish Coalescing operator (??) in JavaScript, which returns the right operand if the left is null or undefined.

If you come across array.filter(Boolean) in JavaScript code, never fear! It's a handy bit of functional programming that cleans up arrays with null and undefined values in them.
Have you noticed that your favorite IDE has been slow to load lately? Try removing these before losing hope.
So, like all good things, the idea for this post comes from a tweet...
Dependabot is an automation service that will automatically create PRs to keep your projects' dependencies up to date, and it is really powerful.
This is a follow-up to my first post on the upcoming Promise.allSettled() function, coming soon to a node application near you.
Part 2 in a series of posts on destructuring syntax for JavaScript and Node.
Promise.allSettled() is a new API coming to the JavaScript / ES6 standard which can help you more efficiently build node applications that make simultaneous asynchronous API calls
If you're not careful, your node projects can start to fill all the spare disk space on your computer. This one weird trick (lol) can help avoid that.
Destructuring syntax in es6 (or es2015, etc) JavaScript is a wonderfully useful bit of the language. It allows you to extract values from an Object and assign them to a new variable in one statement -- but it can be confusing to read.
Prettier.js is a fantastic way to systemize and automate your project's code style.

Subscribe and join 🔥
My weekly newsletter for product builders. It's a single, tiny idea to help you build better products.
Once a week, straight from me to you. 😘 Unsubscribe anytime.
Get in touch to → Sponsor Tiny Improvements