Skip to content
jshacks.dev

About

This is my personal blog. I use it to write down everything I learn and run into, at work and in my own side projects, so I don't have to learn it twice.

I've been building for the web for a long time now. Years of JavaScript, from jQuery-era DOM scripts to async Node.js services, TypeScript monorepos and the React, Vue and Svelte front ends on top of them, plus the bundlers, test runners and CI pipelines that hold it all together. Somewhere along the way I noticed that the notes I kept for myself were the most useful thing I owned, and that most of them would have saved me a weekend on my last project.

So here they are, cleaned up. Each post is something I actually did: a bug that ate an afternoon, a Node.js or TypeScript setup I keep coming back to, a thing the docs explain in one line that took me a week to really get. I run the code before I post it and I say which Node.js, TypeScript and library versions I used, because nothing is more annoying than a tutorial that worked once on somebody else's laptop.

The name says what it is: hacks, in the old sense of clever, practical shortcuts. If you're new to JavaScript, welcome, I'll show you the path I took and where I tripped. If you've been around a while, I hope you still find a trick or two.

Some links might earn me a small commission. That never decides what I write about or recommend. If I wouldn't use it myself, it's not here.

Found something broken, or want me to write about something? Drop me a line. I read everything.