Start Building for Free
CircleCI.comAcademyBlogCommunitySupport

Publish to npm registry

2 weeks ago1 min read
Cloud
Server v4+
On This Page

In this how-to guide, you will learn how to configure CircleCI to publish to the npm registry.

Introduction

Setting up CircleCI to publish packages to the npm registry enabling project collaborators to release new package versions in a consistent and predictable way.

1. Get the npm authToken

Get the npm authToken for the account that you wish to use to publish the package. You can do this by logging in to npm (npm login). This will save the authToken to the ~/.npmrc file. Look for the following line:

//registry.npmjs.org/:_authToken=00000000-0000-0000-0000-000000000000

In this case, the authToken is 00000000-0000-0000-0000-000000000000.

2. Set npm token

Go to your project settings, and set the NPM_TOKEN variable to the obtained authToken.

3. Configure CircleCI

Configure CircleCI to add the authToken to ~/.npmrc, run npm publish and only for versioned tags:

version: 2.1

jobs:
  publish:
    docker:
      - image: <docker-image-name-tag>
    steps:
      - checkout
      - run:
          name: Publish to NPM
          command: |
            npm set //registry.npmjs.org/:_authToken=$NPM_TOKEN
            npm publish

workflows:
  tagged-build:
    jobs:
      - publish:
          filters:
            tags:
              only: /v[0-9]+(\.[0-9]+)*/

4. Create a new version

When you want to publish a new version to npm, run npm version to create a new version:

npm version 10.0.1

This will update the package.json file and creates a tagged Git commit. Next, push the commit with tags:

git push --follow-tags

5. Publish

If tests passed, CircleCI will publish the package to npm automatically.


Suggest an edit to this page

Make a contribution
Learn how to contribute