Skip to content

How to test an npm package locally

THE AHA STACK MASTERCLASS

Launching May 27th

If you want to develop your own npm package, you first have to test it locally.

I had this need with a project that I wanted to modularize.

I had a package I called, as an example, flaviocopes-common-database.

I prepended flaviocopes- to give it a unique namespace.

Inside the package I added a package.json file with the module name in the name property and a few dependencies:

{
  "name": "flaviocopes-common-database",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "dependencies": {
    "pg": "^8.0.2",
    "sequelize": "^5.21.6"
  }
}

Then I ran

npm link

This created a symbolic link in the /usr/local/lib/node_modules/ folder, that contains the global npm packages in the system, the ones installed using npm -g, to be clear.

I had

/usr/local/lib/node_modules/flaviocopes-common-database

Pointing to the local file I had in

/Users/flavio/dev/code/flaviocopes-common-database

Now in another project I wanted to use this module, so I ran

npm link flaviocopes-common-database

and I was able to import it in the Node.js code using the usual require() syntax:

const database = require('flaviocopes-common-database')

→ Get my Node.js Handbook

I wrote 20 books to help you become a better developer:

  • Astro Handbook
  • HTML Handbook
  • Next.js Pages Router Handbook
  • Alpine.js Handbook
  • HTMX Handbook
  • TypeScript Handbook
  • React Handbook
  • SQL Handbook
  • Git Cheat Sheet
  • Laravel Handbook
  • Express Handbook
  • Swift Handbook
  • Go Handbook
  • PHP Handbook
  • Python Handbook
  • Linux Commands Handbook
  • C Handbook
  • JavaScript Handbook
  • CSS Handbook
  • Node.js Handbook
...download them all now!

Related posts that talk about node: