An Introduction to Verdaccio

verdaccio official logo

If you are Web developer the command npm is well-known for you and pretty likely yarn has become popular in your workflow as well.

In some point, in your daily basis development you have needed a bit of privacy for your node modules, besides there are paid options like in npmjs.com, sometimes the paranoia takes over you and feel forced to put your source code under one hundred locks, there is when Verdaccio as private npm repository server comes up.

Do not miss the Version 3 release announcement

A bit of history

Verdaccio is sinopia’s fork since one year ago due the inactivity of the original project. In the same way that other forks were created in parallel, verdaccio has been giving strong support to the community releasing several times the last year fixing bugs and improving documentation and Docker support.

Installing

npm install -g verdaccio

The installation is pretty lightweight and not configuration needed, you can customize as your wish afterwards.

Running

After the installation, execute verdaccio is pretty straightforward, you have only run a single command.

The first time it will create a config file in yalm format. You will have the chance to override default behaviors as the default storage, uplinks and authentication via plugins. In future articles I’ll extend on configuration alternatives. It’s completely configurable.

Docker

Verdaccio also is available as Docker container. You can pull the container as is defined below:

// pull the container
$> docker pull verdaccio/verdaccio
// running the container
$> docker run --detach -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio

To ensure the container is running correctly the status should display up and accesible via http://localhost:4873/.

>$ docker ps
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                    NAMES
364d4db5f323        verdaccio/verdaccio   "/usr/src/app/bin/..."   48 seconds ago      Up 47 seconds       0.0.0.0:4873->4873/tcp   verdaccio

Update (January 2019)

Early 2019 we had a talk about the same topic of this article, watch it if you want to know how about Verdaccio.

Vienna.js Meetup Priscila Oliveira and Juan Picado

Conclusion

Verdaccio has evolved since the fork in 2016. Thanks of the community the project is still running and inmproving in several ways, a new UI, product more stable and reliable, but still, there is a lot to do and I encourage you to contribute and make this amazing project stronger and popular.

There are other options outside for npm proxy servers, but, verdaccio wants to be a fast and portable npm private registry free solution for the community.

https://www.verdaccio.org/