
React SPA to Next.js Migration Checklist for SEO and Indexing
A React SPA to Next.js SEO migration checklist for preserving indexing, redirects, metadata, rendered HTML, internal links, crawl paths, and launch confidence.
Articles
The guides are the practical part of this archive: working explanations for a specific web development problem, written to show the decision as well as the answer. The subject varies, but the aim is consistent: enough context to use the technique sensibly rather than copy it blindly.

A React SPA to Next.js SEO migration checklist for preserving indexing, redirects, metadata, rendered HTML, internal links, crawl paths, and launch confidence.

How to test Vue components with Vue Test Utils using realistic interactions, focused assertions, better test boundaries, and less brittle design.

How to solve Search in Rotated Sorted Array with modified binary search, identifying the sorted half each step and narrowing safely in TypeScript.

The 'Merge Two Sorted Lists' problem on LeetCode involves combining two sorted linked lists into one. Here, I explore a clear solution with TypeScript examples.

Solve Koko Eating Bananas with binary search on the answer, using feasibility checks, speed bounds, ceiling division, TypeScript examples, and edge cases.

Tail call optimisation in JavaScript, why it matters conceptually, and why patchy engine support still makes it unreliable for production recursion.

WeakMap and WeakSet in JavaScriptUnderstand WeakMap and WeakSet in JavaScript, including weak references, metadata storage, private data patterns, memory behaviour, and Map or Set differences.

JavaScript Symbols explained in plain English, including unique keys, well‑known symbols, hidden metadata, and the cases where they are genuinely useful.

React's virtual DOM optimises performance by reducing updates to the real DOM. Here, I explain how it works, how it compares, and why it improves efficiency.

Garbage collection in JavaScript frees up unused memory automatically. Here, I explain how it works and how to prevent memory leaks in your applications.

How to implement server‑side rendering in Vue, with a clearer mental model for hydration, data loading, caching, and where SSR actually pays off.

Solve Daily Temperatures with a monotonic stack in TypeScript, storing indices to find the next warmer day without repeated scanning and common mistakes.

Implement a Trie prefix tree in TypeScript with Map‑based nodes, insert, search, startsWith, shared prefixes, complexity, and alternative child storage.

How to build efficient recursive functions in JavaScript, with better base cases, less repeated work, and a clearer sense of when recursion fits naturally.

Execution context defines how JavaScript code runs, from global scope to function calls. Here, I explore how it works in browsers, React, Next.js, and Node.js.

useMemo and useCallbackOptimise React performance with useMemo and useCallback only where profiling shows expensive calculations, unstable functions, or avoidable re‑renders.

Solve Binary Tree Zigzag Level Order Traversal with breadth‑first search, level sizing, alternating output order, and TypeScript implementation details.

A version‑specific investigation into Next.js 15.5.5 Middleware not firing in Pages Router, with checks, workarounds and Next.js 16 Proxy context.