
NextAuth Works Locally but Fails in Production
How to debug NextAuth when it works locally but fails in production, covering callback URLs, cookies, secrets, middleware, providers, and Vercel.
Articles
Development is the broadest category in my writing, so it works as the main archive rather than a narrow subject label. It brings together implementation notes and technical decisions, with delivery lessons from across the rest of the site.

How to debug NextAuth when it works locally but fails in production, covering callback URLs, cookies, secrets, middleware, providers, and Vercel.

Solve Kth Smallest Element in a BST with in‑order traversal, showing why the tree's ordering removes the need for a separate sorting step in interviews.

RxJS offers a powerful, reactive approach to managing state in Angular apps. Here, I clearly explain practical patterns and show how to use them effectively.

Debug Next.js build timeouts on Vercel by checking route generation, CMS data fan‑out, memory pressure, image work, caching, logs, and platform limits.

React developer vs. Next.js developer explained through production concerns: rendering, routing, caching, SEO, deployment, CMS data, and debugging.

Solve Combination Sum with backtracking in TypeScript, using a growing path, remaining total, sorted pruning, reuse rules, and common mistakes too.

A Next.js production triage checklist for broken deploys, covering rollback decisions, logs, environment drift, routes, auth, CMS data, and cache.

A clear walkthrough of LeetCode Jump Game using a greedy algorithm, including why the farthest‑reach approach works and where slower ideas get stuck.

Memoization helps JavaScript functions run faster by caching previous results. Here's a clear guide on how and when to use memoization effectively.

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.

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

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