description |
---|
The Next.js CLI allows you to start, build, and export your application. Learn more about it here. |
The Next.js CLI allows you to start, build, and export your application.
To get a list of the available CLI commands, run the following command inside your project directory:
npx next -h
(npx comes with npm 5.2+ and higher)
The output should look like this:
Usage
$ next <command>
Available commands
build, start, export, dev, lint, telemetry
Options
--version, -v Version number
--help, -h Displays this message
For more information run a command with the --help flag
$ next build --help
You can pass any node arguments to next
commands:
NODE_OPTIONS='--throw-deprecation' next
NODE_OPTIONS='-r esm' next
NODE_OPTIONS='--inspect' next
next build
creates an optimized production build of your application. The output displays information about each route.
- Size – The number of assets downloaded when navigating to the page client-side. The size for each route only includes its dependencies.
- First Load JS – The number of assets downloaded when visiting the page from the server. The amount of JS shared by all is shown as a separate metric.
The first load is indicated by green, yellow, or red. Aim for green for performant applications.
You can enable production profiling for React with the --profile
flag in next build
. This requires Next.js 9.5:
next build --profile
After that, you can use the profiler in the same way as you would in development.
You can enable more verbose build output with the --debug
flag in next build
. This requires Next.js 9.5.3:
next build --debug
With this flag enabled additional build output like rewrites, redirects, and headers will be shown.
next dev
starts the application in development mode with hot-code reloading, error reporting, and more:
The application will start at http://localhost:3000
by default. The default port can be changed with -p
, like so:
npx next dev -p 4000
Or using the PORT
environment variable:
PORT=4000 npx next dev
Note:
PORT
can not be set in.env
as booting up the HTTP server happens before any other code is initialized.
You can also set the hostname to be different from the default of 0.0.0.0
, this can be useful for making the application available for other devices on the network. The default hostname can be changed with -H
, like so:
npx next dev -H 192.168.1.2
next start
starts the application in production mode. The application should be compiled with next build
first.
The application will start at http://localhost:3000
by default. The default port can be changed with -p
, like so:
npx next start -p 4000
Or using the PORT
environment variable:
PORT=4000 npx next start
Note:
PORT
can not be set in.env
as booting up the HTTP server happens before any other code is initialized.
next lint
runs ESLint for all files in the pages
, components
, and lib
directories. It also
provides a guided setup to install any required dependencies if ESLint is not already configured in
your application.
If you have other directories that you would like to lint, you can specify them using the --dir
flag:
next lint --dir utils
Next.js collects completely anonymous telemetry data about general usage. Participation in this anonymous program is optional, and you may opt-out if you'd not like to share any information.
To learn more about Telemetry, please read this document.