Manage Node.js Dependencies and Environments in VS Code

Efficiently managing Node.js dependencies and environments is crucial for seamless application development. Visual Studio Code (VS Code) simplifies this workflow through built-in features like the Integrated Terminal, the npm Scripts Explorer, and Launch Configurations (launch.json). This article explains how to leverage these specific tools to manage your packages and control environment variables directly within your editor.

The Integrated Terminal

The Integrated Terminal is the primary tool in VS Code for managing Node.js dependencies. Instead of switching to an external command-line interface, you can open the terminal inside VS Code using the shortcut Ctrl + \`` (orCmd + `` on macOS).

Within this terminal, you can run package managers like npm, Yarn, or pnpm to install, update, and prune dependencies (e.g., running npm install or npm update). Because the terminal automatically opens in your project’s root directory, there is no need to manually navigate to your workspace folder.

The npm Scripts Explorer

VS Code includes a dedicated npm Scripts Explorer in the Side Bar (usually located within the Explorer view). This feature automatically detects the package.json file in your workspace and lists all the scripts defined in it, such as start, test, or build.

Instead of typing commands in the terminal, you can hover over any script in this explorer and click the “Run” play button. You can also click the “Debug” button next to a script to start your Node.js application with the VS Code debugger automatically attached, making it easier to analyze package execution.

Launch Configurations (launch.json) for Environment Management

For managing runtime environments and environment variables, VS Code uses Launch Configurations. By creating a .vscode/launch.json file in your workspace, you can define how your Node.js application runs and debugs.

You can manage environment variables directly within this configuration file using two key properties:

Version Management via Terminal Profiles

While VS Code does not have a built-in Node.js version switcher, its terminal seamlessly integrates with external environment managers like nvm (Node Version Manager) or fnm. You can configure your default shell or terminal profiles in VS Code’s settings.json to ensure the correct Node.js runtime environment is automatically loaded every time you open a project workspace.