Run/Debug Configuration: Node.js
In this dialog, create configurations for running and debugging Node.js applications locally. "Locally" in the current context means that PhpStorm itself starts Node.js installed on your computer, whereupon initiates a running or debugging session.
Before you start
Download and install Node.js.
In this field, specify the Node.js interpreter to use. This can be a local or remote Node.js interpreter or a Node.js on Windows Subsystem for Linux. Select an interpreter from the list or click and configure a new one in the dialog that opens.
In this field, type the Node.js-specific command line options to be passed to the NodeJS executable file. The most common options are:
For a full list, see Node.js command line options.
In this field, specify the working directory of the application. By default, the field shows the project root folder.
| In this field, specify the path to the main file of the application that starts it (for example, bin/www for Node.js Express applications). |
In this text box, type the Node.js-specific arguments to be passed to the application on start through the process.argv array.
| In this field, specify the environment variables for the Node.js executable file, if applicable. Click Browse to the right of the field and configure a list of variables in the Environment Variables dialog, that opens: |
The definitions of variables are displayed in the Environment variables read-only field with semicolons as separators. The acceptable variables are:
Docker container settings
Click to open the dialog and specify the following settings:
Click to expand the tables. Click , , or to make up the lists.
Select this checkbox to have PhpStorm configure the container settings. In the Automatic configuration mode:
Even with automatic configuration, you still need to bind the port on which your application is running with the port of the container. Those exposed ports are available on the Docker host’s IP address (by default 192.168.99.100). Such binding is required when you debug the client side of a Node.js Express application. In this case, you need to open the browser from your computer and access the application at the container host through the port specified in the application.
Browser / Live Edit tab
In this tab, configure the behaviour of the browser and enable debugging the client-side code of the application. This functionality is provided through a
In the field in this area, specify a project HTML file to create a correct URL to this file according to the project root to be started on the built-in web server. For example, if you choose project_root/inner_folder/index.html the resulting URL will be http://localhost:63342/project_root/inner_folder/index.html. If you select the After Launch checkbox, the browser will open this page automatically after the application starts. Alternatively you can view the same result by opening the page with this URL address in the browser of your choice manually.
Select this checkbox to automatically open the browser. From the list, select the browser to use:
V8 Profiling tab
In this tab, enable V8 CPU and memory profiling.
Record CPU profiling info
| Select this checkbox to start logging the CPU profiling data when the application is launched. The controls in the area below become enabled. Specify the following: |
Allow taking heap snapshots
Select this checkbox if you are going to run memory profiling.
When you edit a run configuration (but not a run configuration template), you can specify the following options:
The tree view of run/debug configurations has a toolbar that helps you manage configurations available in your project as well as adjust default configurations templates.
Create a run/debug configuration.
Delete the selected run/debug configuration. Note that you cannot delete default configurations.
Create a copy of the selected run/debug configuration. Note that you create copies of default configurations.
The button is displayed only when you select a temporary configuration. Click this button to save a temporary configuration as permanent.
View and edit the template (that is, the default settings) for the selected run/debug configuration. The templates are displayed under the Templates node and used for newly created configurations.
Move the selected run/debug configuration up and down in the list.
The order of configurations in the list defines the order, in which the configurations appear when you choose a run/debug configuration.
Default templates of run/debug configurations are always sorted alphabetically.
Move into new folder / Create new folder. You can group run/debug configurations by placing them into folders.
To create a folder, select the configurations within a category, click , and specify the folder name. If only a category is in focus, an empty folder is created.
Then, to move a configuration into a folder, between the folders or out of a folder, use drag or and buttons.
To remove grouping, select a folder and click .
Click this button to sort configurations in the alphabetical order.
In this area you can specify tasks that must be performed before starting the selected run/debug configuration. The tasks are performed in the order they appear in the list.
Click this icon to add one of the following available tasks:
Click this icon to remove the selected task from the list.
Click this icon to edit the selected task. Make the necessary changes in the dialog that opens.
Click these icons to move the selected task one line up or down in the list. (The tasks are performed in the order that they appear in the list.)
Show this page
Select this checkbox to show the run/debug configuration settings prior to actually starting the run/debug configuration.
Activate tool window
Otherwise, if the checkbox is cleared, the tool window isn't shown. However, when the configuration is running, you can open the corresponding tool window for it yourself by pressing Alt+4 or Alt+5.