
Next.js Proxy Replaces Middleware: What Changes in Practice
Next.js Proxy replaces Middleware in v16. See what changed, how to migrate to proxy.ts, and when request‑time interception still belongs in production.
Articles from more than two decades of building, rebuilding, debugging and leading web projects.

Next.js Proxy replaces Middleware in v16. See what changed, how to migrate to proxy.ts, and when request‑time interception still belongs in production.

A production runbook for stale CMS content in Next.js, covering webhooks, route dependencies, ISR, cache boundaries, preview and editor trust.

How to solve LeetCode Coin Change with dynamic programming, and why the obvious greedy approach fails on exactly the cases worth understanding in interviews.

Next.js gives us two ways to handle back‑end logic: API Routes and Server Actions. Here, I clearly explain when to choose each approach for the best results.

The diameter of a binary tree is the longest path between any two nodes. I'll explain clearly how we can solve this problem using recursion in JavaScript.

A headless CMS SEO checklist covering metadata, canonicals, schema, redirects, sitemaps, preview, internal links, image fields, and publishing controls.

How to solve Course Schedule with topological sort in TypeScript, comparing Kahn's algorithm with DFS cycle detection and why in‑degrees read clearly.

Enterprise AI delivery usually fails after the demo, when ownership, governance, support, procurement, data access, and measurement have to become real.

Technical SEO launch criteria for Next.js migrations, covering URLs, redirects, canonicals, metadata, rendered HTML, schema, sitemaps, and recovery.

What GEO is, where it overlaps with SEO and AEO, and why crawlability, evidence, structure and practical judgement matter more than AI tricks.

The JavaScript module pattern explained through closures and private state, plus the architectural lessons it still teaches modern developers today.

Compare rendered HTML before and after a migration, checking headings, metadata, links, schema, body copy, media, crawl signals, and launch risk.

Solve Rotting Oranges with multi‑source BFS in TypeScript, treating each queue level as one minute and tracking fresh cells until spread completes.

React performance work is often about avoiding repeated effort. This guide looks at memoisation, browser caching, and smarter data‑fetching choices.

How to diagnose traffic loss after a WordPress to Next.js migration by checking redirects, rendered HTML, metadata, canonicals and tracking noise.

Agentic systems do not replace service design. They expose weak contracts, permissions, observability, retries, state ownership, and workflow boundaries.

A WordPress to Next.js migration checklist for URLs, content models, media, preview, redirects, metadata, schema, sitemaps, SEO, and launch checks.

Solve Kth Largest Element in an Array with Quickselect in TypeScript, comparing sorting, heaps, partitioning, random pivots, and trade‑offs under pressure.

Set and MapJavaScript's `Set` and `Map` simplify common tasks like managing unique values or key‑value pairs. Here, I'll share practical examples for everyday development.

A Next.js crawlability checklist for debugging sitemaps, robots.txt, canonicals, route generation, redirects, staging leaks, missing pages, and indexation.

How to solve LeetCode Find Peak Element with binary search, and why local comparisons are enough even when the array is not sorted in the usual way.