Destinations
Explore handpicked luxury destinations around the globe

Browser-Based PDF Page Editing with Vue 3 and pdf-lib
True PDF text editing is hard. PDF was designed as a fixed-layout format, not an editable document...

How to Merge Large PDFs in the Browser Without Crashing
Merging PDFs sounds simple until you hit a 200 MB file and your browser tab dies. This is a real...

How to Build a PDF Viewer in Vue.js with PDF.js + AI, vue-pdf-embed, @tato30/vue-pdf, and Vue PDF Viewer (2026)
About three weeks ago, I reread the early 2024 version of this comparison I wrote on this blog. The...

Serving many brands from one Nuxt 3 codebase
I work on a white-label storefront that ships under a couple dozen brands. Same flows, same...

Why We Built Another Data Grid (and What It Took to Ship It)
If you've ever had to pick a data grid library for a React or Vue app, you know the landscape: a...

How I am using Vue with Typescript 7 today
TypeScript 7 shipped this week. The Go-native compiler, the one with the order-of-magnitude speed...

How to Convert PDF to Word with Vue 3 and PDF.js
Extracting text from a PDF in the browser sounds straightforward. It is — mostly. The tricky part is...

Our verifier was buggier than the code it verified
The most dangerous bug in a verification pipeline isn't a false pass. It's a false fail. We know...

Building a Very Long Number Calculator Using Angular, React, Svelte, and Vue
Introduction Modern computing has transformed the way we solve mathematical problems. From...

I Built the Vue 3 Japanese Postal Code Library That Didn't Exist
Introduction I'm a full-stack engineer working in Tokyo. One day, I needed to build a...