Verdaccio

Verdaccio

  • Docs
  • Blog
  • Twitter
  • Help
  • GitHub
  • Contributors
  • Sponsor Us
  • Languages iconFrançais
    • English
    • Español
    • 中文
    • Russian
    • Yoruba
    • Aidez à traduire

›Uses Cases

Introduction

  • C'est quoi Verdaccio?
  • Installation
  • Outil de ligne de commande
  • Using a private registry
  • Who is using Verdaccio?
  • Security Policy
  • Logotype
  • Uses Cases

    • End to End testing
    • Caching strategies
    • GitHub Actions
    • Linking a Remote Registry

    Talks & Articles

    • Articles
    • Talks

Features

  • Fichier de configuration
  • Uplinks
  • Paquet d'accès
  • Authentication
  • Notifications
  • Enregistreur
  • Interface d'Utilisateur Web

Server

  • Configuration du serveur
  • Configuration du proxy inverse
  • Configurez les Certificats SSL
  • Installation en tant que service Windows
  • Installation sur le serveur IIS

Development

  • Plugins
  • Développement des Plugins
  • Dev Guides

    • Plugin Generator
    • Plugin d’authentification
    • Plugin Middleware
    • Plugin de stockage
  • Node API

DevOps

  • Docker
  • Kubernetes
  • Intégration Continue
  • Cloud

    • Amazon Web Services

    Tools

    • Ansible
    • Puppet
    • Chef Cookbook

Guides

  • Best Practices
  • Protection des paquets
  • Amazon Web Services
Translate

End to End testing

Some projects organize packages in multi-packages repositories or monorepos. E2E testing is a topic that usually is only relevant for User Interfaces, but from a Node.js perspective, publishing packages also need to be tested.

Solution: a local npm registry. https://t.co/kvcyVANVSK

— Dan Abramov (@dan_abramov) 11 de enero de 2018

Such approach has been really hard to achieve considering:

  • Populate canary packages on public services seems not to be a good idea
  • Some self-hosted OSS registries are too heavy
  • Offline environments (private networks)

Verdaccio is a lightweight registry with zero-configuration that fits perfectly in any E2E + CI workflow.

Implementation

There is no a silver bullet yet, each implementation seems to be specific for each project, you can check some of them in the following thread clicking here.

Example using Bash

This is the most simple example using Verdaccio in a bash script (extracted from create-react-app).

#!/bin/sh

set -e

local_registry="http://0.0.0.0:4873"

# start local registry
tmp_registry_log=`mktemp`
sh -c "mkdir -p $HOME/.config/verdaccio"
sh -c "cp --verbose /config.yaml $HOME/.config/verdaccio/config.yaml"
sh -c "nohup verdaccio --config $HOME/.config/verdaccio/config.yaml &>$tmp_registry_log &"
# wait for `verdaccio` to boot
grep -q 'http address' <(tail -f $tmp_registry_log)
# login so we can publish packages
sh -c "npm-auth-to-token -u test -p test -e test@test.com -r $local_registry"
# Run nmp command
sh -c "npm --registry $local_registry publish"

Who is using it for E2E?

  • create-react-app (+73.5k ⭐️)
  • Storybook (+44k ⭐️)
  • Gatsby *(+40k ⭐️)
  • Babel.js (+35k ⭐️)
  • Uppy (+21k ⭐️)
  • Aurelia Framework (+12k ⭐️)
  • ethereum/web3.js (+8k ⭐️)
  • bit (+6k ⭐️)
  • pnpm (+6k ⭐️)
  • Mozilla Neutrino (+3k ⭐️)
  • Embark (+3k ⭐️)
  • Hyperledger Composer (+1.6k ⭐️)
  • Wix Yoshi
← PrécédentCaching strategies →
  • Implementation
    • Example using Bash
  • Who is using it for E2E?
Verdaccio
Docs
Getting StartedDockerConfigurationLogos
Community
User ShowcaseStack OverflowProject ChatFollow Verdaccio on Twitter
More
BlogGitHubStar