Back to Rspack

Command line interface

website/docs/en/api/cli.mdx

2.0.16.1 KB
Original Source

import { PackageManagerTabs } from '@theme';

Command line interface

@rspack/cli is the command line tool for Rspack, providing a variety of commands to make working with Rspack easier.

  • If you do not have @rspack/cli installed, please read the Quick start section first.
  • If you are using Rsbuild, please refer to the Rsbuild CLI section.

:::warning Compatible with webpack-cli @rspack/cli is not compatible with webpack-cli, so there will be some differences between the two. :::

All commands

To view all available CLI commands, run the following command in the project directory:

bash
npx rspack -h

Common flags

Rspack CLI provides several common flags that can be used with all commands:

FlagDescription
-c, --config [value]Specify the path to the configuration file, see Specify the configuration file
--configLoaderSpecify the loader to load the config file, can be auto, jiti or native, defaults to auto
--configNameSpecify the name of the configuration to use.
--nodeEnvSet the value of process.env.NODE_ENV, defaults to development for rspack dev, and production for rspack build and rspack preview
-h, --helpShow help information
-v, --versionShow version number

:::tip All flags in Rspack CLI support the camelCase and kebab-case, for example, both --configLoader and --config-loader are valid. :::

rspack build

rspack build is used to run Rspack build, which will generate the output files in the output.path directory.

bash
npx rspack build  # Read the `rspack.config.*` configuration file by default

rspack build can be abbreviated as rspack b:

bash
npx rspack b

Use the -c or --config flag to specify the configuration file path:

bash
npx rspack build -c ./your.config.js

The complete flags are as follows:

rspack build

Options:
      --entry          entry file                                        [array]
  -o, --outputPath     output path dir                                  [string]
  -m, --mode           mode                                             [string]
  -w, --watch          watch                          [boolean] [default: false]
      --env            env passed to config function                     [array]
  -d, --devtool        devtool                        [boolean] [default: false]
      --json           emit stats json

rspack dev

rspack dev is used to run Rspack dev server, which will start a local dev server that will listen for file changes and automatically refresh the browser.

:::info Required dependency The rspack dev command requires @rspack/dev-server to be installed. If you haven't installed it yet, run:

<PackageManagerTabs command="add @rspack/dev-server -D" /> :::
bash
npx rspack dev

Use the -c or --config flag to specify the configuration file path:

bash
npx rspack dev -c ./your.config.js

rspack dev can be abbreviated as rspack serve or rspack s:

bash
npx rspack s
npx rspack serve

Use --open or --no-open to override devServer.open from the CLI without editing your config file:

bash
npx rspack dev --open
npx rspack dev --open /my-page
npx rspack dev --no-open

The complete flags are as follows:

rspack dev

Options:
      --entry          entry file                                        [array]
  -o, --outputPath     output path dir                                  [string]
  -m, --mode           mode                                             [string]
  -w, --watch          watch                          [boolean] [default: false]
      --env            env passed to config function                     [array]
  -d, --devtool        devtool                        [boolean] [default: false]
      --hot            enables hot module replacement
      --port           allows to specify a port to use                  [number]
      --host           allows to specify a hostname to use              [string]
      --open [value]   open browser on server start; pass --no-open to disable, or --open <url> to open a specific URL

rspack preview

rspack preview is used to preview the production build output locally, note that you need to build the output first by running the rspack build command.

:::info Required dependency The rspack preview command requires @rspack/dev-server to be installed. If you haven't installed it yet, run:

<PackageManagerTabs command="add @rspack/dev-server -D" />

:::

bash
npx rspack preview

The complete flags are as follows:

rspack preview [dir]

run the rspack server for build output

Positionals:
  dir  directory want to preview                                        [string]

Options:
      --publicPath  static resource server path                         [string]
      --port        preview server port                                 [number]
      --host        preview server host                                 [string]
      --open        open browser                                       [boolean]
      --server      Configuration items for the server.                 [string]