Brute forcing my way to better HTML > DOCX conversion
About 10 years ago I fell in love with Vue.js. The easy-to-learn syntax and reactivity were a joy to work with, and HMR (hot module replacement) added…
Tech news from the best sources
About 10 years ago I fell in love with Vue.js. The easy-to-learn syntax and reactivity were a joy to work with, and HMR (hot module replacement) added…
A while back I set myself a slightly unhinged goal: build a web browser from scratch in Node.js and Electron no external HTML/CSS/layout libraries, ev…
I love Prisma. I have shipped Prisma to production more times than I care to count. It changed how a lot of us write TypeScript against databases. But…
Our indicator looks like this: an icon + a label. The browser has an indicator for when a user is in private mode. The indicator lives in two places u…
You Don't Need MIDI-OX Anymore: Building a SysEx Librarian with the Web MIDI API If you own a Yamaha DX7 or a Roland Juno-106, you already know the ri…
"To defend a system, you must first think like the attacker." I'll tell you this: the browser is one of the most hostile execution environments ever b…
A free, client-side tool for hashing text — no installation, no account, no server. What Is a Hash and When Do You Need One? A hash function takes any…
The question comes up every time someone recommends a free, no-account tool: "How does this even stay online? How are they paying for servers?" It's a…
Originally posted on Medium In the first post I sketched out what an enterprise browser is and laid the foundation for my proof-of-concept, enterprise…
Related: Network Optimization for SPAs and React Apps covers the broader network optimization picture including HTTP caching and API request optimizat…
Related: Critical CSS: What Render-Blocking Really Means and How Inlining Fixes It covers the related optimization of eliminating render-blocking CSS,…
Most people pick the first image tool that appears in a Google search, create an account when asked, and never think about it again. That's a reasonab…
Related: The Browser Main Thread and Rendering Pipeline explains the full rendering pipeline that critical CSS inlining is optimizing for. Lighthouse …
Something quiet happened to the web over the last few years. Tools that used to demand your email address before showing you anything now just... work…
# Click-Line I got tired of fighting my browser, so I built this While working and browsing daily, I kept running into the same tiny frustrations: Mis…
Here's something that didn't happen with an announcement: the floor for what a browser can compute, without sending your data anywhere, has risen cons…
If you're a Mac user who prefers Chrome, Firefox, Brave, Arc, or any browser other than Safari, you've probably experienced this frustrating moment: y…
I recently had a requirement where, if a user opens the app in multiple browser tabs, only one tab can be active at a time, and the rest are locked. C…
April is one of those months where the tool discovery inbox fills up faster than usual. Partly it's spring project energy, partly it's that the no-acc…