Next.js on the edge: streaming, RSC and speed
React Server Components and the edge runtime change how you build for speed. A practical look at streaming, where to render, and keeping Core Web Vitals green.
The fastest request is the one that streams its first byte immediately. Modern Next.js — server components, streaming and the edge runtime — makes that the default instead of a heroic optimisation.
Render where the data lives
Server components let you fetch on the server and ship HTML, not a waterfall of client fetches. The client bundle shrinks, and the user sees content sooner. Reach for a client component only where you genuinely need interactivity.
Stream the slow parts
Wrap slow sections in Suspense and let the shell paint instantly while the rest streams in. Users perceive a page that responds, not one that hangs on its slowest query.
Guard Core Web Vitals
Reserve space for async content so nothing jumps (CLS), keep the main thread free for interaction (INP), and lazy-load below-the-fold images. Speed is a feature — treat it like one and measure it in CI.
The edge is not magic, but rendering close to the user, streaming aggressively and shipping less JavaScript compounds into an app that simply feels fast.
More writing
iAspirants — the best UPSC AI preparation platform
A complete tour of iAspirants, an AI-powered UPSC preparation platform that brings the best UPSC current affairs, daily Prelims MCQ practice, PYQs, AI Mains answer evaluation, smart notes, mind maps and performance analytics together in one place.
Architecting RAG that actually ships
Retrieval-augmented generation is easy to demo and hard to ship. Here's the pipeline I reach for — chunking, embeddings, reranking and citations — and the failure modes to design around.
From API call to agents in production
Calling an LLM API is the easy 10%. The real engineering is the system around it — tools, guardrails, retries and human-in-the-loop. Notes from wiring agents into real products.