Skip to content

Pages Router course and basics/* starters target Node 18, but Next.js 16 requires Node >=20.9 #1336

Open

Description

@Jeko92

Before submitting

  • I have searched existing issues to make sure this isn't a duplicate
  • I have completed this chapter and encountered the issue myself

Chapter URL

https://nextjs.org/learn/pages-router/create-nextjs-app-setup

Issue Type

Outdated code or instructions

Description

The Pages Router course and the basics/* starters still target Node.js 18, but the starters depend on next: latest, which now installs Next.js 16. Next.js 16 requires "node": ">=20.9.0" and refuses to start on Node 18.

Where Node 18 is still specified:

Affected folders: api-routes-starter, assets-metadata-css-starter, basics-final, data-fetching-starter, demo, dynamic-routes-starter, dynamic-routes-step-1, learn-starter, navigate-between-pages-starter, typescript-final

Steps to reproduce

  1. npx create-next-app@latest nextjs-blog --use-npm --example "https://github.com/vercel/next-learn/tree/main/basics/learn-starter"
  2. cd nextjs-blog && nvm install (reads .nvmrc and switches to Node 18)
  3. npm run dev

Suggested fix

  • Lesson text: change the requirement to Node.js 20.9 or higher.
  • Starters: set engines.node to >=20.9.0 to match Next.js 16, and set .nvmrc to a supported LTS such as 24, since Node 20 reached end-of-life in April 2026.

I'm happy to open a PR for the starter files.

Expected vs Actual Behavior

Expected: with Node 18, which the lesson and the starter's .nvmrc both specify, npm run dev starts the dev server.

Actual: Next.js exits immediately:

You are using Node.js 18.20.8. For Next.js, Node.js version ">=20.9.0" is required. 

Environment (optional)

Node version: 18.20.8 (selected via the starter's .nvmrc)
Next.js: 16.4.0 (next: latest)
OS: macOS 26.5

Screenshots (optional)

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions