Blog Page 8
6/20/2026 - 7/30/2026
-
Custom Shopify Themes Converge on Alpine.js
Alpine.js shows up across independent Shopify starter themes for a real reason. Here’s why it fits Online Store 2.0, with real production examples.
-
Why Alpine.js Has No Real Autocomplete (AI Doesn’t Fix It)
AI autocomplete doesn’t replace structural tooling for Alpine.js, it needs it. Real hallucination research, and why GitHub added LSP to Copilot itself.
-
Alpine.js Tools v1.0-v1.5: Three Bugs, Three Fixes
From v1.0.0 to v1.5.0, Alpine.js Tools gained diagnostics, Go to Definition, and plugin support in VS Code, plus three bugs fixed along the way.
-
Why I Migrated From Next.js to Express in 2026
The migration that made Express the default for every Node stack I run: the bugs that started it, the research that held up, and four months of monitoring.
-
Why Next.js Has 13x More CVEs Than Express
Next.js carries 64 catalogued advisories to Express’s 5, counted the same way on the same day. The severity split matters more than the count.
-
Why Server-Rendered Templates Don’t Need a Build Step
Server-rendered templates compile just-in-time, no separate build phase. How EJS caching works, what it costs, and when a build step still earns its place.
-
Next.js Hides Its Cache, Redis Doesn’t: The Observability Gap
Redis reports hit rate, misses and evictions in one command. Self-hosted Next.js gives you a per-response header and leaves the aggregation to you.
-
Why React SSR Blocks Node’s Event Loop (SSR via Templating Doesn’t)
React’s SSR APIs run synchronous CPU work on Node’s single thread, from renderToString through RSC serialization. What blocks, and what streaming fixes.
-
Why Alpine.js Replaced React for Content-Driven Sites
Measured from the shipped files: Alpine’s CDN build is 16.7kB gzipped against 47kB for React plus React DOM. Where that gap matters, and where it does not.
-
Next.js Memory Leak on Self-Hosted Search Routes: A Case Study
A production case study on memory growth from caching unbounded dynamic search routes in self-hosted Next.js, what changed in 15 and 16, and what fixed it.
-
Why Instagram, TikTok, Twitter, and Other Social Embeds Break on Next.js Route Changes
Embeds render on refresh but vanish on client-side navigation. The spec-level cause, the fix platforms document, and why server-rendered pages don’t break.
-
Alpine.js Highlighting and Completion for Neovim
Tree-sitter and legacy syntax highlighting for Alpine.js directives in Neovim, plus nvim-cmp completion and snippets across HTML, EJS, Blade, Twig, Liquid, and more.