Skip to content
This page is also available as Markdown: request this page's URL with an Accept: text/markdown header. For an index of Next.js Pages Router documentation, see /docs/pages/llms.txt.
You are currently viewing the documentation for Pages Router.

API Reference

Last updated March 30, 2026

async modifyConfig(config, context)

Called for any CLI command that loads the next.config.js file to allow modification of the configuration.

Parameters:

  • config: The complete Next.js configuration object
  • context.phase: The current build phase (see phases)
  • context.nextVersion: Version of Next.js being used
  • context.projectDir: Absolute path to the Next.js project directory

Returns: The modified configuration object (can be async)

async onBuildComplete(context)

Called after the build process completes with detailed information about routes and outputs.

Parameters:

  • context.routing: Object containing Next.js routing phases and metadata
    • routing.beforeMiddleware: Routes executed before middleware (includes header and redirect handling)
    • routing.middlewareMatchers: Middleware matcher definitions for this build, used to decide whether middleware should be invoked for a given request
    • routing.beforeFiles: Rewrite routes checked before filesystem route matching
    • routing.afterFiles: Rewrite routes checked after filesystem route matching
    • routing.dynamicRoutes: Dynamic route matching table
    • routing.onMatch: Routes applied after a successful match (for example immutable static asset cache headers)
    • routing.fallback: Final rewrite fallback routes
    • routing.shouldNormalizeNextData: Whether /_next/data/<buildId>/... URLs should be normalized during matching
    • routing.rsc: Route metadata used for React Server Components routing behavior
  • context.outputs: Detailed information about all build outputs organized by type
  • context.projectDir: Absolute path to the Next.js project directory
  • context.repoRoot: Absolute path to the detected repository root
  • context.distDir: Absolute path to the build output directory
  • context.config: The final Next.js configuration (with modifyConfig applied)
  • context.nextVersion: Version of Next.js being used
  • context.buildId: Unique identifier for the current build

Was this helpful?

supported.