Run/Debug Configuration: Node JS
This feature is supported in the Professional edition only.
In this dialog box, create configurations for running and debugging of NodeJS applications locally. "Locally" in the current context means that PyCharm itself starts the NodeJS runtime environment installed on your computer, whereupon initiates a running or debugging session.
On this page:
- Getting access to the Run/Debug Configuration: NodeJS dialog
- Configuration tab
- Browser / Live Edit tab
- V8 Profiling tab
- Toolbar
- Common options
Getting access to the Run/Debug Configuration: NodeJS dialog
- Install and enable the Node.js plugin. The plugin is not bundled with PyCharm, but it can be installed from the JetBrains plugin repository as described in Installing, Updating and Uninstalling Repository Plugins and Enabling and Disabling Plugins.
- Download and install the NodeJS runtime environment that contains the Node Package Manager(npm).
Configuration tab
Item | Description | ||||
---|---|---|---|---|---|
Node Interpreter | In this field, specify the NodeJS installation home. Type the path to the NodeJS executable file manually, or click the ![]() If you have appointed one of the installations as default, the field displays the path to its executable file. | ||||
Node Parameters | In this text box, type the NodeJS-specific command line options to be passed to the NodeJS executable file. The most common options are:
For a full list, see NodeJS command line options. | ||||
Working Directory | In this field, specify the working directory of the application. All references in the starting NodeJS application file, for example, imports, will be resolved relative to this folder, unless such references use full paths. By default, the field shows the project root folder. To change this predefined setting, choose the desired folder from the drop-down list, or type the path manually, or click the Browse button | ||||
JavaScript File | In this field, specify the full path to the file to start running or debugging the application from. If you are going to debug CoffeeScript, specify the path to the generated JavaScript file with source maps. The file can be generated externally or through compilation using file watchers. For more details, see Compiling CoffeeScript to JavaScript. | ||||
Application Parameters | In this text box, type the NodeJS-specific arguments to be passed to the application start file through the process.argv array. | ||||
Environment Variables | In this field, specify the environment variables for the NodeJS executable file, if applicable. Click the Browse button ![]()
The definitions of variables are displayed in the Environment variables read-only field with semicolons as separators. The acceptable variables are: | ||||
Docker container settings | In this field, type the settings manually, or click ![]() The field is available only when a remote Node.js interpreter running on a Docker container is chosen. | ||||
Auto configuration | Select this check box to have PyCharm configure the container settings. In the Automatic configuration mode:
With automatic configuration, you still need to bind the port that your application is running on 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 so you need to open the browser from your computer and access the application at the host of the container through the port specified in the application.
The field is available only when a remote Node.js interpreter running on a Docker container is chosen. |
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 JavaScript Debug
run configuration, so technically, PyCharm creates separate run configurations for the server-side and the client-side code, but you specify all your settings in one dedicated NodeJS run configuration.
However, activating Live Edit in this tab lets you invoke Live Edit without creating a separate configuration, during a debugging session launched through the Node.js configuration.
For more information, see Live Editing of HTML, CSS, and JavaScript.
Item | Description |
---|---|
Open Browser | In the text box in this area, specify the URL address to open the application at. If you select the After Launch check box, 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. |
After launch | Select this check box to have a browser started automatically after a debugging session is launched. Specify the browser to use in the drop-down list next to the check box.
|
With JavaScript debugger | Select this check box to enable debugging the client-side code in the selected browser. |
V8 Profiling tab
Toolbar
Item | Shortcut | Description |
---|---|---|
![]() | Alt+Insert | Click this button to add a new configuration to the list. |
![]() | Alt+Delete | Click this button to remove the selected configuration from the list. |
![]() | Ctrl+D | Click this button to create a copy of the selected configuration. |
![]() | Edit defaults | Click this button to edit the default configuration templates. The defaults are used for newly created configurations. |
![]() ![]() | Alt+Up or Alt+Down | Use these buttons to move the selected configuration or folder up and down in the list. The order of configurations or folders in the list defines the order in which configurations appear in the Run/Debug drop-down list on the main toolbar. |
![]() | Move into new folder / Create new folder | Use this button to create a new folder. If one or more run/debug configurations are in focus, the selected run/debug configurations are automatically moved to the newly created folder. If only a category is in focus, an empty folder is created. Move run/debug configurations to a folder using drag-and-drop, or the |
![]() | Sort configurations | Click this button to sort configurations in alphabetical order. |
Common options
Item | Description | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Name | In this text box, specify the name of the current run/debug configuration. This field does not appear for the default run/debug configurations. | ||||||||||||||||||||||||
Defaults | This node in the left-hand pane of the dialog box contains the default run/debug configuration settings. Select the desired configuration to change its default settings in the right-hand pane. The defaults are applied to all newly created run/debug configurations. | ||||||||||||||||||||||||
Share | Select this check box to make the run/debug configuration available to other team members. The shared run/debug configurations are kept in separate xml files under This check box is not available when editing the run/debug configuration defaults. | ||||||||||||||||||||||||
Single instance only | If this check box is selected, this run/debug configuration cannot be launched more than once. Every time a new run/debug configuration is launched, PyCharm checks the presence of the other instances of the same run/debug configuration, and displays a confirmation dialog box. If you click OK in the confirmation dialog box, the first instance of the runner will be stopped, and the next one will take its place. This makes sense when the usage of certain resources can cause conflicts, or when launching two run/debug configurations of the same type consumes too much of the CPU and memory resources. If this check box is not selected, it is possible to launch as many instances of the runner as required. So doing, each runner will start in its own tab of the Run tool window. | ||||||||||||||||||||||||
Before launch | Specify which tasks must be performed before applying the run/debug configuration. The specified tasks are performed in the order they appear in the list.
|