How do I resolve a "Cannot find module" error using Node.js?

Matthew C.

The Problem

You have a JavaScript dependency in your Node.js project. When you try to import an item from the dependency module, you get the following Node.js error:

Error: Cannot find module '<module name>'

This error occurs when Node.js can’t find a module that you imported into your code. The name of the missing module is provided in the error message. How do you fix this error?

The Solution

This error is caused by a missing dependency, an incorrect file path, an outdated dependency, or corrupt files. The commands shown in the solution are for the npm package manager. There are equivalent commands for Yarn and pnpm.

Make sure the dependency is installed in the correct place

When a project’s Node.js dependencies are installed, they are added to the node_modules folder in the root directory of the project. Check the package.json file to see if the missing module is in the project’s dependencies or devDependencies. If it is not, install the dependency:

npm install <dependency name>

If the dependency is in the package.json file, make sure that the node_modules folder is in the root folder of the project and that the missing module is in the node_modules folder. Also, make sure that the file path in the module import is correct.

Update the dependency

The issue may be caused by importing from an outdated module. To fix this, update the dependency to the latest version:

npm update [<pkg>...]

Delete and reinstall the dependencies

If all else fails, you can try the following:

  1. Delete the node_modules folder:
rm -rf node_modules
  1. Delete the package-lock.json file:
rm -f package-lock.json
  1. Clear the Node.js cache, which may be corrupted:
npm cache clean --force
  1. Reinstall the dependencies:
npm install

If you still have an error, you can try to reinstall Node.js and npm to make sure that you have the latest versions and that any corrupted files are replaced.

Get Started With Sentry

Get actionable, code-level insights to resolve Node performance bottlenecks and errors.

  1. Create a free Sentry account

  2. Create a Node project and note your DSN

  3. Install the Sentry Node SDK

npm install @sentry/node
  1. Configure your DSN
const Sentry = require('@sentry/node'); Sentry.init({ dsn: 'https://<key>@sentry.io/<project>' });

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Share on Twitter
Bookmark this page
Ask a questionJoin the discussion

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedinDiscord
© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.