Guides
Last updated April 23, 2026
[
AI Coding Agents
Learn how to configure your Next.js project so AI coding agents use up-to-date documentation instead of outdated training data.
](ai-agents/index.md)[
Analytics
Measure and track page performance using Next.js Speed Insights
](analytics/index.md)[
Authentication
Learn how to implement authentication in your Next.js application.
](authentication/index.md)[
Backend for Frontend
Learn how to use Next.js as a backend framework
](backend-for-frontend/index.md)[
Caching (Previous Model)
Learn how to cache and revalidate data using fetch options, unstable_cache, and route segment configs for projects not using Cache Components.
](caching-without-cache-components/index.md)[
CDN Caching
Learn how CDN caching works with Next.js, including what works today, cache variability, and the direction toward pathname-based cache keying.
](cdn-caching/index.md)[
CI Build Caching
Learn how to configure CI to cache Next.js builds
](ci-build-caching/index.md)[
Content Security Policy
Learn how to set a Content Security Policy (CSP) for your Next.js application.
](content-security-policy/index.md)[
CSS-in-JS
Use CSS-in-JS libraries with Next.js
](css-in-js/index.md)[
Custom Server
Start a Next.js app programmatically using a custom server.
](custom-server/index.md)[
Data Security
Learn the built-in data security features in Next.js and learn best practices for protecting your application's data.
](data-security/index.md)[
Debugging
Learn how to debug your Next.js application with VS Code, Chrome DevTools, or Firefox DevTools.
](debugging/index.md)[
Deploying to Platforms
Understand which Next.js features require specific platform capabilities and how to choose the right deployment target.
](deploying-to-platforms/index.md)[
Draft Mode
Next.js has draft mode to toggle between static and dynamic pages. You can learn how it works with App Router here.
](draft-mode/index.md)[
Environment Variables
Learn to add and access environment variables in your Next.js application.
](environment-variables/index.md)[
Forms
Learn how to create forms in Next.js with React Server Actions.
](forms/index.md)[
How Revalidation Works
A deep dive into how Next.js revalidates cached content, including the tag system, cache consistency, and multi-instance coordination.
](how-revalidation-works/index.md)[
ISR
Learn how to create or update static pages at runtime with Incremental Static Regeneration.
](incremental-static-regeneration/index.md)[
Instrumentation
Learn how to use instrumentation to run code at server startup in your Next.js app
](instrumentation/index.md)[
Internationalization
Add support for multiple languages with internationalized routing and localized content.
](internationalization/index.md)[
JSON-LD
Learn how to add JSON-LD to your Next.js application to describe your content to search engines and AI.
](json-ld/index.md)[
Lazy Loading
Lazy load imported libraries and React Components to improve your application's loading performance.
](lazy-loading/index.md)[
Development Environment
Learn how to optimize your local development environment with Next.js.
](local-development/index.md)[
Next.js MCP Server
Learn how to use Next.js MCP support to allow coding agents access to your application state
](mcp/index.md)[
MDX
Learn how to configure MDX and use it in your Next.js apps.
](mdx/index.md)[
Memory Usage
Optimize memory used by your application in development and production.
](memory-usage/index.md)[
Migrating
Learn how to migrate from popular frameworks to Next.js
](migrating/index.md)[
Migrating to Cache Components
Learn how to migrate from route segment configs to Cache Components in Next.js.
](migrating-to-cache-components/index.md)[
Multi-tenant
Learn how to build multi-tenant apps with the App Router.
](multi-tenant/index.md)[
Multi-zones
Learn how to build micro-frontends using Next.js Multi-Zones to deploy multiple Next.js apps under a single domain.
](multi-zones/index.md)[
OpenTelemetry
Learn how to instrument your Next.js app with OpenTelemetry.
](open-telemetry/index.md)[
Package Bundling
Learn how to analyze and optimize your application's server and client bundles with the Next.js Bundle Analyzer for Turbopack, and the `@next/bundle-analyzer` plugin for Webpack.
](package-bundling/index.md)[
PPR Platform Guide
A guide for platform engineers on implementing PPR support, from basic origin rendering to optimized CDN integration.
](ppr-platform-guide/index.md)[
Prefetching
Learn how to configure prefetching in Next.js
](prefetching/index.md)[
Preserving UI state
Learn how to control which UI state is preserved and which resets when navigating between pages.
](preserving-ui-state/index.md)[
Production
Recommendations to ensure the best performance and user experience before taking your Next.js application to production.
](production-checklist/index.md)[
PWAs
Learn how to build a Progressive Web Application (PWA) with Next.js.
](progressive-web-apps/index.md)[
Public pages
Learn how to build public, "static" pages that share data across users, such as landing pages, list pages (products, blogs, etc.), marketing and news sites.
](public-static-pages/index.md)[
Redirecting
Learn the different ways to handle redirects in Next.js.
](redirecting/index.md)[
Rendering Philosophy
Learn how Next.js treats static and dynamic rendering as a spectrum at the component level, and what this means for deployment.
](rendering-philosophy/index.md)[
Sass
Style your Next.js application using Sass.
](sass/index.md)[
Scripts
Optimize 3rd party scripts with the built-in Script component.
](scripts/index.md)[
Self-Hosting
Learn how to self-host your Next.js application on a Node.js server, Docker image, or static HTML files (static exports).
](self-hosting/index.md)[
SPAs
Next.js fully supports building Single-Page Applications (SPAs).
](single-page-applications/index.md)[
Static Exports
Next.js enables starting as a static site or Single-Page Application (SPA), then later optionally upgrading to use features that require a server.
](static-exports/index.md)[
Streaming
Learn how streaming works in Next.js and how to use it to progressively render UI as data becomes available.
](streaming/index.md)[
Tailwind CSS v3
Style your Next.js Application using Tailwind CSS v3 for broader browser support.
](tailwind-v3-css/index.md)[
Testing
Learn how to set up Next.js with four commonly used testing tools — Cypress, Playwright, Vitest, and Jest.
](testing/index.md)[
Third Party Libraries
Optimize the performance of third-party libraries in your application with the `@next/third-parties` package.
](third-party-libraries/index.md)[
Upgrading
Learn how to upgrade to the latest versions of Next.js.
](upgrading/index.md)[
Videos
Recommendations and best practices for optimizing videos in your Next.js application.
](videos/index.md)[
View transitions
Learn how to use view transitions to communicate meaning during navigation, loading, and content changes in a Next.js app.
](view-transitions/index.md)
Was this helpful?