// writing
Posts tagged #tooling
A mix of technical deep-dives, career reflections, and dispatches from the road.
tag: #tooling

developmentNov 9, 2026· 4 min
Laravel 13 Vector Search: Semantic Queries Without a Search Service
Laravel 13 adds whereVectorSimilarTo, vector columns, and an AsVector cast, so meaning-based search can live in the Postgres or MariaDB database you run.
read more →

developmentNov 5, 2026· 4 min
Oxlint JS Plugins: Your Custom ESLint Rules No Longer Keep You on ESLint
Oxlint now runs ESLint plugins and your own custom rules, so the last excuse for a slow lint step is gone. Here's how JS plugins work and where the gaps are.
read more →

developmentOct 22, 2026· 4 min
Subpath Imports With #/: The Path Alias Node Actually Understands
Node 24.14 and TypeScript 6.0 allow a bare #/ prefix in package.json imports. Here's how one alias can replace tsconfig paths, Vite aliases, and build rewrites.
read more →

developmentOct 15, 2026· 4 min
Svelte Error Boundaries: Contain the Crash Instead of Losing the Page
One flaky widget shouldn't blank your whole app. Here's how Svelte's boundary element walls off failures, shows loading UI for await, and works during SSR.
read more →

developmentOct 12, 2026· 4 min
Dependency Cooldowns: Make Your Package Manager Wait Before It Trusts New Code
npm, pnpm, Yarn, and Bun can all refuse package versions that are only hours old. Here's how each release-age gate works, why units differ, and where CI bites.
read more →

developmentOct 1, 2026· 4 min
Your tsconfig Is Still Written for TypeScript 5. Here's the Cleanup TS 7 Forces
TypeScript 6 flipped half a dozen compiler defaults and TypeScript 7 deleted deprecated options. Here's the tsconfig audit for the native compiler.
read more →

developmentSep 28, 2026· 3 min
Node.js Type Stripping: Run TypeScript Without a Build Step
Node.js now runs .ts files by erasing types, not compiling them. Here's what that buys you, what it refuses to do, and the tsconfig that keeps you honest.
read more →

developmentSep 27, 2026· 4 min
Compression Dictionaries: Ship Only the Diff When Your Bundle Changes
Compression Dictionary Transport (RFC 9842) lets the browser tell your server which file it has cached, so a redeployed bundle can arrive as a tiny delta.
read more →

developmentSep 21, 2026· 3 min
import defer: Lazy Modules Without Going Async
ES2026's import defer evaluates a module the first time you touch its namespace, not at startup, so heavy work leaves the cold path without going async.
read more →

developmentSep 20, 2026· 4 min
Turbopack's Persistent Build Cache Only Helps If Your CI Keeps It
Next.js 16.3 turned on Turbopack's persistent build cache with claimed speedups up to 5.5x. Most CI pipelines see none of it, because containers start empty.
read more →
// the newsletter