Merge remote-tracking branch 'origin/master' into 4.x

# Conflicts:
#	crowdin.yaml
#	docs/cli.md
#	docs/config.md
#	docs/server.md
#	docs/uplinks.md
This commit is contained in:
Juan Picado @jotadeveloper 2018-11-24 09:06:48 +01:00
commit e712eb4460
No known key found for this signature in database
GPG Key ID: 18AC54485952D158
922 changed files with 0 additions and 66711 deletions

View File

@ -176,20 +176,6 @@ jobs:
- store_test_results:
path: coverage/clover.xml
publish_gh_pages:
<<: *defaults
<<: *default_executor
steps:
- *restore_repo
- restore_cache:
key: *base_config_key
- run:
name: Publish gh-pages
command: |
cd website
yarn install
GIT_USER=verdacciobot USE_SSH=false yarn run publish-gh-pages
publish_package:
<<: *defaults
<<: *default_executor
@ -240,17 +226,7 @@ workflows:
- test_e2e
- test_size
<<: *ignore_non_dev_branches
- publish_gh_pages:
requires:
- test_node6
- test_node8
- test_node9
- test_node10
- test_e2e
- test_size
<<: *execute_on_release
- publish_package:
requires:
- coverage
- publish_gh_pages
<<: *execute_on_release

View File

@ -1,49 +0,0 @@
project_identifier_env: CROWDIN_VERDACCIO_PROJECT_ID
api_key_env: CROWDIN_VERDACCIO_API_KEY
base_path: './'
preserve_hierarchy: true
commit_message: 'docs(website): new translations'
files:
- source: '/docs/*.md'
translation: '/website/translated_docs/%locale%/%original_file_name%'
languages_mapping: &anchor
locale:
'af': 'af'
'ar': 'ar'
'bs-BA': 'bs-BA'
'ca': 'ca'
'cs': 'cs'
'da': 'da'
'de': 'de'
'el': 'el'
'es-ES': 'es-ES'
'fa': 'fa-IR'
'fi': 'fi'
'fr': 'fr-FR'
'he': 'he'
'hu': 'hu'
'id': 'id-ID'
'it': 'it-IT'
'ja': 'ja'
'ko': 'ko'
'mr': 'mr-IN'
'nl': 'nl'
'no': 'no-NO'
'pl': 'pl-PL'
'pt-BR': 'pt-BR'
'pt-PT': 'pt-PT'
'ro': 'ro'
'ru': 'ru-RU'
'sk': 'sk-SK'
'sr': 'sr-SP'
'sr-CS': 'sr-CS'
'sv-SE': 'sv-SE'
'tr': 'tr'
'uk': 'uk'
'vi': 'vi-VN'
'zh-CN': 'zh-CN'
'zh-TW': 'zh-TW'
- source: '/website/i18n/en.json'
translation: '/website/i18n/%locale%.json'
languages_mapping: *anchor

View File

@ -1,14 +0,0 @@
---
id: ansible
title: "Ansible"
---
We have a customised solution for `verdaccio` in our organization.
[https://github.com/verdaccio/ansible-verdaccio](https://github.com/verdaccio/ansible-verdaccio)
#### Other options
* Ansible role for Gentoo users: [jirutka/ansible-role-sinopia](https://github.com/jirutka/ansible-role-sinopia).
* Ansible role for Ubuntu users: [jagregory/sinopia-ansible](https://github.com/jagregory/sinopia-ansible).
* ansible-verdaccio-role [https://github.com/refinery29/ansible-verdaccio-role](https://github.com/refinery29/ansible-verdaccio-role)

View File

@ -1,57 +0,0 @@
---
id: authentification
title: "Authentification"
---
The authentification is tied to the auth [plugin](plugins.md) you are using. The package restrictions also is handled by the [Package Access](packages.md).
The client authentification is handled by `npm` client itself. Once you login to the application:
```bash
npm adduser --registry http://localhost:4873
```
A token is generated in the `npm` configuration file hosted in your user home folder. For more information about `.npmrc` read the [official documentation](https://docs.npmjs.com/files/npmrc).
```bash
cat .npmrc
registry=http://localhost:5555/
//localhost:5555/:_authToken="secretVerdaccioToken"
//registry.npmjs.org/:_authToken=secretNpmjsToken
```
#### Anonymous publish
`verdaccio`allows you to enable anonymous publish, to achieve that you will need to set up correctly your [packages access](packages.md).
Eg:
```yaml
'my-company-*':
access: $anonymous
publish: $anonymous
proxy: npmjs
```
As is described [on issue #212](https://github.com/verdaccio/verdaccio/issues/212#issuecomment-308578500) until `npm@5.3.0` and all minor releases **won't allow you publish without a token**. However `yarn` has not such limitation.
## Default htpasswd
In order to simplify the setup, `verdaccio` use a plugin based on `htpasswd`. As of version v3.0.x an [external plugin](https://github.com/verdaccio/verdaccio-htpasswd)
is used by default. The v2.x version of this package still contains the built-in version of this plugin.
```yaml
auth:
htpasswd:
file: ./htpasswd
# Maximum amount of users allowed to register, defaults to "+inf".
# You can set this to -1 to disable registration.
#max_users: 1000
```
Property | Type | Required | Example | Support | Description
--- | --- | --- | --- | --- | ---
file | string | Yes | ./htpasswd | all | file that host the encrypted credentials
max_users | number | No | 1000 | all | set limit of users
In case to decide do not allow user to login, you can set `max_users: -1`.

View File

@ -1,14 +0,0 @@
---
id: build
title: "Build the source code"
---
Verdaccio relies on `yarn` instead `npm` to download dependencies.
*Note: the current build only will build with `➜ yarn@1.x`.
```bash
yarn install
```
To see the complete list of scripts, [click here](https://github.com/verdaccio/verdaccio/wiki/Build-Source-Code).

View File

@ -1,17 +0,0 @@
---
id: chef
title: "Chef Cookbook"
---
Using Chef Cookbook for Verdaccio
For further information:
* [https://github.com/verdaccio/verdaccio-cookbook](https://github.com/verdaccio/verdaccio-cookbook)
* [https://supermarket.chef.io/cookbooks/verdaccio](https://supermarket.chef.io/cookbooks/verdaccio)
> We are looking for contributors for this repository, if you are interested please notify the author via tickets.
Author: [Keli Grubb](https://github.com/kgrubb) && Barthelemy Vessemont.

View File

@ -1,14 +0,0 @@
---
id: ci
title: "Continuous Integration"
---
You may use verdaccio with continuous integration while login or publish. When
using NPM to install a private module in a continuous integration environment
for the first time, a brick wall is quickly hit. The NPM login command is
designed to be used interactively. This causes an issue in CI, scripts, etc.
Heres how to use NPM login different continuous integration platforms.
- [Travis CI](https://remysharp.com/2015/10/26/using-travis-with-private-npm-deps)
- [Circle CI 1.0](https://circleci.com/docs/1.0/npm-login/) or [Circle CI 2.0](https://circleci.com/docs/2.0/deployment-integrations/#npm)
- [Gitlab CI](https://www.exclamationlabs.com/blog/continuous-deployment-to-npm-using-gitlab-ci/)

View File

@ -1,32 +0,0 @@
---
id: cli
title: "Command Line Tool"
---
The verdaccio CLI is your go start the application.
## Commands
```bash
verdaccio --listen 4000 --config ~./config.yaml
```
Command | Default | Example | Description
--- | --- | --- | ---
--listen \ **-l** | 4873 | -p 7000 | http port
--config \ **-c** | ~/.local/verdaccio/config.yaml | ~./config.yaml | the configuration file
## Default config file location
To locate the home directory, we rely on **$XDG_DATA_HOME** as a first choice and Windows environment we look for [APPDATA environment variable](https://www.howtogeek.com/318177/what-is-the-appdata-folder-in-windows/).
## Default storage location
We use **$XDG_DATA_HOME** environment variable as default to locate the storage by default which [should be the same](https://askubuntu.com/questions/538526/is-home-local-share-the-default-value-for-xdg-data-home-in-ubuntu-14-04) as $HOME/.local/share.
If you are using a custom storage, this location is irrelevant.
## Default database file location
The default database file location is in the storage location.
Starting with version 4.0.0, the database file name will be **.verdaccio-db.json** for a new installation of Verdaccio.
When upgrading an existing Verdaccio server, the file name will remain **.sinopia-db.json**.

View File

@ -1,234 +0,0 @@
---
id: configuration
title: "Configuration File"
---
This file is the cornerstone of verdaccio where you can modify the default behaviour, enable plugins and extend features.
A default configuration file is created the very first time you run `verdaccio`.
## Default Configuration
The default configuration has support for **scoped** packages and allow any user to access all packages but only **authenticated users to publish**.
```yaml
storage: ./storage
auth:
htpasswd:
file: ./htpasswd
uplinks:
npmjs:
url: https://registry.npmjs.org/
packages:
'@*/*':
access: $all
publish: $authenticated
proxy: npmjs
'**':
proxy: npmjs
logs:
- {type: stdout, format: pretty, level: http}
```
## Sections
The following sections explain what each property means and the different options.
### Storage
Is the location of the default storage. **Verdaccio is by default based on local file system**.
```yaml
storage: ./storage
```
### Plugins
Is the location of the plugin directory. Useful for Docker/Kubernetes based deployments.
```yaml
plugins: ./plugins
```
### Authentification
The authentification set up is done here, the default auth is based on `htpasswd` and is built-in. You can modify this behaviour via [plugins](plugins.md). For more information about this section read the [auth page](auth.md).
```yaml
auth:
htpasswd:
file: ./htpasswd
max_users: 1000
```
### Security
<small>Since: `verdaccio@4.0.0` due [#168](https://github.com/verdaccio/verdaccio/pull/168)</small>
The security block allows you to customise the token signature. To enable [JWT (json web token)](https://jwt.io/) new signture you need to add the block `jwt` to `api` section, `web` uses by default `jwt`.
The configuration is separated in two sections, `api` and `web`. To use JWT on `api`, it has to be defined, otherwise will use the legacy token signature (`aes192`). For JWT you might customize the [signature](https://github.com/auth0/node-jsonwebtoken#jwtsignpayload-secretorprivatekey-options-callback) and the token [verification](https://github.com/auth0/node-jsonwebtoken#jwtverifytoken-secretorpublickey-options-callback) with your own properties.
```
security:
api:
legacy: true
jwt:
sign:
expiresIn: 29d
verify:
someProp: [value]
web:
sign:
expiresIn: 7d # 7 days by default
verify:
someProp: [value]
```
> We highly recommend move to JWT since legacy signature (`aes192`) is deprecated and will disappear in future versions.
### Web UI
This property allow you to modify the look and feel of the web UI. For more information about this section read the [web ui page](web.md).
```yaml
web:
enable: true
title: Verdaccio
logo: logo.png
scope:
```
### Uplinks
Uplinks is the ability of the system to fetch packages from remote registries when those packages are not available locally. For more information about this section read the [uplinks page](uplinks.md).
```yaml
uplinks:
npmjs:
url: https://registry.npmjs.org/
```
### Packages
Packages allow the user to control how the packages are gonna be accessed. For more information about this section read the [packages page](packages.md).
```yaml
packages:
'@*/*':
access: $all
publish: $authenticated
proxy: npmjs
```
## Advanced Settings
### Offline Publish
By default `verdaccio` does not allow to publish when the client is offline, that behavior can be overridden by setting this to *true*.
```yaml
publish:
allow_offline: false
```
<small>Since: `verdaccio@2.3.6` due [#223](https://github.com/verdaccio/verdaccio/pull/223)</small>
### URL Prefix
```yaml
url_prefix: https://dev.company.local/verdaccio/
```
Since: `verdaccio@2.3.6` due [#197](https://github.com/verdaccio/verdaccio/pull/197)
### Max Body Size
By default the maximum body size for a JSON document is `10mb`, if you run in errors as `"request entity too large"` you may increase this value.
```yaml
max_body_size: 10mb
```
### Listen Port
`verdaccio` runs by default in the port `4873`. Changing the port can be done via [cli](cli.md) or in the configuration file, the following options are valid.
```yaml
listen:
# - localhost:4873 # default value
# - http://localhost:4873 # same thing
# - 0.0.0.0:4873 # listen on all addresses (INADDR_ANY)
# - https://example.org:4873 # if you want to use https
# - "[::1]:4873" # ipv6
# - unix:/tmp/verdaccio.sock # unix socket
```
### HTTPS
To enable `https` in `verdaccio` it's enough to set the `listen` flag with the protocol *https://*. For more information about this section read the [ssl page](ssl.md).
```yaml
https:
key: ./path/verdaccio-key.pem
cert: ./path/verdaccio-cert.pem
ca: ./path/verdaccio-csr.pem
```
### Proxy
Proxies are special-purpose HTTP servers designed to transfer data from remote servers to local clients.
#### http_proxy and https_proxy
If you have a proxy in your network you can set a `X-Forwarded-For` header using the following properties.
```yaml
http_proxy: http://something.local/
https_proxy: https://something.local/
```
#### no_proxy
This variable should contain a comma-separated list of domain extensions proxy should not be used for.
```yaml
no_proxy: localhost,127.0.0.1
```
### Notifications
Enabling notifications to third-party tools is fairly easy via web hooks. For more information about this section read the [notifications page](notifications.md).
```yaml
notify:
method: POST
headers: [{'Content-Type': 'application/json'}]
endpoint: https://usagge.hipchat.com/v2/room/3729485/notification?auth_token=mySecretToken
content: '{"color":"green","message":"New package published: * {{ name }}*","notify":true,"message_format":"text"}'
```
> For more detailed configuration settings, please [check the source code](https://github.com/verdaccio/verdaccio/tree/master/conf).
### Audit
<small>Since: `verdaccio@3.0.0`</small>
`npm audit` is a new command released with [npm 6.x](https://github.com/npm/npm/releases/tag/v6.1.0). Verdaccio includes
a built-in middleware plugin to handle this command.
> If you have a new installation it comes by default, otherwise you need to add the following props to your config file
```yaml
middlewares:
audit:
enabled: true
```

View File

@ -1,83 +0,0 @@
---
id: contributing
title: "Contributing Verdaccio"
---
First of all 👏👏 thanks for visiting this page, for us means you are willing contribute to `verdaccio` and we are happy for that. Jumping into an unfamiliar code base is not easy but we are here to help you.
## Comunication Channels
If you are willing for asking, we use two channels for discussions:
* [Public Discord channel](http://chat.verdaccio.org/)
## Getting started
As a first glance verdaccio is a single repository, but there are many ways you might contribute and a variety of technologies to practice.
### Finding my spot
All we have different skills, so, let's see where you might feel comfortable.
### I know or I want to learn Node.js
Node.js is the base of `verdaccio`, we use libraries as `express`, `commander`, `request` or `async`. Verdaccio is basically a Rest API that create a communication with `npm` clients compatible, as `yarn`.
We have a long [list of plugins](plugins.md) ready to be used and improved but at the same time [you might create your own](dev-plugins.md).
### I would prefer to work in the User Interface
Recently we have moved to modern techonologies as `React` and `element-react`. We are looking forward to see new ideas how to improve the UI.
### I feel more confortable improving the stack
Of course, we will be happy to help us improving the stack, you can upgrade dependencies as `eslint`, `stylelint`, `webpack`. You might merely improve the `webpack` configuration would be great. Any suggestion is very welcome. Furthermore whether you have experience with **Yeoman** you might help us with the [verdaccio generator](https://github.com/verdaccio/generator-verdaccio-plugin).
Here some ideas:
* Create a common eslint rules to be used across all dependencies or plugins
* Improve Flow types definitions delivery
* Moving to Webpack 4
* Improve hot reload with Webpack
* We use babel and webpack across all dependencies, why not a common preset?
* Improve continous integration delivery
### I do great Documentation
Many contributors find typos and grammar issues, that also helps to improve the overall experience for troubleshooting.
### I am a Designer
We have a frontend website [http://www.verdaccio.org/](http://www.verdaccio.org/) that will be happy to see your ideas.
Our website is based on [Docusaurus](https://docusaurus.io/).
### I am a DevOps
We have a widely popular Docker image [https://hub.docker.com/r/verdaccio/verdaccio/](https://hub.docker.com/r/verdaccio/verdaccio/) that need maintenance and pretty likely huge improvements, we need your knowledge for the benefits of all users.
We have support for **Kubernetes**, **Puppet**, **Ansible** and **Chef** and we need help in those fields, feel free to see all repositories.
### I can do translations
Verdaccio aims to be multilingual, in order to achieve it **we have the awesome support** of [Crowdin](https://crowdin.com) that is an amazing platform for translations.
<img src="https://d3n8a8pro7vhmx.cloudfront.net/uridu/pages/144/attachments/original/1485948891/Crowdin.png" width="400px"/>
We have setup a project where you can choose your favourite language, if you do not find your language feel free to request one [creating a ticket](https://github.com/verdaccio/verdaccio/issues/new).
[Go to Crowdin Verdaccio](https://crowdin.com/project/verdaccio)
## I'm ready to contribute
If you are thinking *"I've seen already the [repositories](repositories.md) and I'm willing to start right away"* then I have good news for you, that's the next step.
You will need learn how to build, [we have prepared a guide just for that](build.md).
Once you have played around with all scripts and you know how to use them, we are ready to go to the next step, run the [**Unit Test**](test.md).
## Full list of contributors. We want to see your face here !
<a href="graphs/contributors"><img src="https://opencollective.com/verdaccio/contributors.svg?width=890&button=false" /></a>

View File

@ -1,193 +0,0 @@
---
id: dev-plugins
title: "Developing Plugins"
---
There are many ways to extend `verdaccio`, the kind of plugins supported are:
* Authentication plugins
* Middleware plugins (since `v2.7.0`)
* Storage plugins since (`v3.x`)
> We recommend developing plugins using our [flow type definitions](https://github.com/verdaccio/flow-types).
## Authentication Plugin
Basically we have to return an object with a single method called `authenticate` that will recieve 3 arguments (`user, password, callback`).
### API
```flow
interface IPluginAuth extends IPlugin {
login_url?: string;
authenticate(user: string, password: string, cb: Callback): void;
adduser(user: string, password: string, cb: Callback): void;
allow_access(user: RemoteUser, pkg: $Subtype<PackageAccess>, cb: Callback): void;
allow_publish(user: RemoteUser, pkg: $Subtype<PackageAccess>, cb: Callback): void;
}
```
> Only `adduser`, `allow_access` and `allow_publish` are optional, verdaccio provide a fallback in all those cases.
#### Callback
Once the authentication has been executed there is 2 options to give a response to `verdaccio`.
###### OnError
Either something bad happened or auth was unsuccessful.
```flow
callback(null, false)
```
###### OnSuccess
The auth was successful.
`groups` is an array of strings where the user is part of.
```
callback(null, groups);
```
### Example
```javascript
function Auth(config, stuff) {
var self = Object.create(Auth.prototype);
self._users = {};
// config for this module
self._config = config;
// verdaccio logger
self._logger = stuff.logger;
// pass verdaccio logger to ldapauth
self._config.client_options.log = stuff.logger;
return self;
}
Auth.prototype.authenticate = function (user, password, callback) {
var LdapClient = new LdapAuth(self._config.client_options);
....
LdapClient.authenticate(user, password, function (err, ldapUser) {
...
var groups;
...
callback(null, groups);
});
};
module.exports = Auth;
```
And the configuration will looks like:
```yaml
auth:
htpasswd:
file: ./htpasswd
```
Where `htpasswd` is the sufix of the plugin name. eg: `verdaccio-htpasswd` and the rest of the body would be the plugin configuration params.
## Middleware Plugin
Middleware plugins have the capability to modify the API layer, either adding new endpoints or intercepting requests.
```flow
interface verdaccio$IPluginMiddleware extends verdaccio$IPlugin {
register_middlewares(app: any, auth: IBasicAuth, storage: IStorageManager): void;
}
```
### register_middlewares
The method provide full access to the authentification and storage via `auth` and `storage`. `app` is the express application that allows you to add new endpoints.
> A pretty good example
of middleware plugin is the [sinopia-github-oauth](https://github.com/soundtrackyourbrand/sinopia-github-oauth) and [verdaccio-audit](https://github.com/verdaccio/verdaccio-audit).
### API
```js
function register_middlewares(expressApp, authInstance, storageInstance) {
/* more stuff */
}
```
To register a middleware we need an object with a single method called `register_middlewares` that will recieve 3 arguments (`expressApp, auth, storage`).
*Auth* is the authentification instance and *storage* is also the main Storage instance that will give you have access to all to the storage actions.
## Storage Plugin
Verdaccio by default uses a file system storage plugin [local-storage](https://github.com/verdaccio/local-storage), but, since `verdaccio@3.x` you can plug in a custom storage replacing the default behaviour.
### API
The storage API is a bit more complex, you will need to create a class that return a `IPluginStorage` implementation. Please see details bellow.
```flow
class LocalDatabase<IPluginStorage>{
constructor(config: $Subtype<verdaccio$Config>, logger: verdaccio$Logger): ILocalData;
}
interface IPluginStorage {
logger: verdaccio$Logger;
config: $Subtype<verdaccio$Config>;
add(name: string, callback: verdaccio$Callback): void;
remove(name: string, callback: verdaccio$Callback): void;
get(callback: verdaccio$Callback): void;
getSecret(): Promise<string>;
setSecret(secret: string): Promise<any>;
getPackageStorage(packageInfo: string): verdaccio$IPackageStorage;
search(onPackage: verdaccio$Callback, onEnd: verdaccio$Callback, validateName: Function): void;
}
interface IPackageStorageManager {
path: string;
logger: verdaccio$Logger;
writeTarball(name: string): verdaccio$IUploadTarball;
readTarball(name: string): verdaccio$IReadTarball;
readPackage(fileName: string, callback: verdaccio$Callback): void;
createPackage(name: string, value: verdaccio$Package, cb: verdaccio$Callback): void;
deletePackage(fileName: string, callback: verdaccio$Callback): void;
removePackage(callback: verdaccio$Callback): void;
updatePackage(pkgFileName: string,
updateHandler: verdaccio$Callback,
onWrite: verdaccio$Callback,
transformPackage: Function,
onEnd: verdaccio$Callback): void;
savePackage(fileName: string, json: verdaccio$Package, callback: verdaccio$Callback): void;
}
class verdaccio$IUploadTarball extends stream$PassThrough {
abort: Function;
done: Function;
_transform: Function;
abort(): void;
done(): void;
}
class verdaccio$IReadTarball extends stream$PassThrough {
abort: Function;
abort(): void;
}
```
> The Storage API is still experimental and might change in the next minor versions. For further information about Storage API please follow the [types
definitions in our official repository](https://github.com/verdaccio/flow-types).
### Storage Plugins Examples
The following list of plugins are implementing the Storage API and might be used them as example.
* [verdaccio-memory](https://github.com/verdaccio/verdaccio-memory)
* [local-storage](https://github.com/verdaccio/local-storage)
* [verdaccio-google-cloud](https://github.com/verdaccio/verdaccio-google-cloud)
* [verdaccio-s3-storage](https://github.com/Remitly/verdaccio-s3-storage/tree/s3)
> Are you willing to contribute with new Storage Plugins? [Click here.](https://github.com/verdaccio/verdaccio/issues/103#issuecomment-357478295)

View File

@ -1,170 +0,0 @@
---
id: docker
title: Docker
---
<div class="docker-count">
![alt Docker Pulls Count](http://dockeri.co/image/verdaccio/verdaccio "Docker Pulls Count")
</div>
To pull the latest pre-built [docker image](https://hub.docker.com/r/verdaccio/verdaccio/):
```bash
docker pull verdaccio/verdaccio
```
![Docker pull](/svg/docker_verdaccio.gif)
## Tagged Versions
Since version `v2.x` you can pull docker images by [tag](https://hub.docker.com/r/verdaccio/verdaccio/tags/), as follows:
For a major version:
```bash
docker pull verdaccio/verdaccio:3
```
For a minor version:
```bash
docker pull verdaccio/verdaccio:3.0
```
For a specific (patch) version:
```bash
docker pull verdaccio/verdaccio:3.0.1
```
For the next major release using the `beta` (master branch) version.
```bash
docker pull verdaccio/verdaccio:beta
```
> If you are interested on a list of tags, [please visit the Docker Hub website](https://hub.docker.com/r/verdaccio/verdaccio/tags/).
## Running verdaccio using Docker
To run the docker container:
```bash
docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio
```
The last argument defines which image to use.
The above line will pull the latest prebuilt image from dockerhub, if you haven't done that already.
If you have [build an image locally](#build-your-own-docker-image) use `verdaccio` as the last argument.
You can use `-v` to bind mount `conf`, `storage` and `plugins` to the hosts filesystem:
```bash
V_PATH=/path/for/verdaccio; docker run -it --rm --name verdaccio -p 4873:4873 \
-v $V_PATH/conf:/verdaccio/conf \
-v $V_PATH/storage:/verdaccio/storage \
-v $V_PATH/plugins:/verdaccio/plugins \
verdaccio/verdaccio
```
>Note: Verdaccio runs as a non-root user (uid=100, gid=101) inside the container, if you use bind mount to override default, you need to make sure the mount directory is assigned to the right user. In above example, you need to run `sudo chown -R 100:101 /opt/verdaccio` otherwise you will get permission errors at runtime. [Use docker volume](https://docs.docker.com/storage/volumes/) is recommended over using bind mount.
### Plugins
Plugins can be installed in a separate directory and mounted using Docker or Kubernetes, however make sure you build plugins with native dependencies using the same base image as the Verdaccio Dockerfile.
### Docker and custom port configuration
Any `host:port` configured in `conf/config.yaml` under `listen` is currently ignored when using docker.
If you want to reach verdaccio docker instance under different port, lets say `5000`
in your `docker run` command replace `-p 4873:4873` with `-p 5000:4873`.
In case you need to specify which port to listen to **in the docker container**,
since version 2.?.? you can do so by providing additional arguments to `docker run`: `--env PORT=5000`
This changes which port the docker container exposes and the port verdaccio listens to.
Of course the numbers you give to `-p` paremeter need to match,
so assuming you want them to all be the same this is what you could copy, paste and adopt:
```bash
PORT=5000; docker run -it --rm --name verdaccio \
--env PORT -p $PORT:$PORT
verdaccio/verdaccio
```
### Using HTTPS with Docker
You can configure the protocol verdaccio is going to listen on, similarly to the port configuration.
You have to overwrite the default value("http") of the `PROTOCOL` environment variable to "https", after you specified the certificates in the config.yaml.
```bash
PROTOCOL=https; docker run -it --rm --name verdaccio \
--env PROTOCOL -p 4873:4873
verdaccio/verdaccio
```
### Using docker-compose
1. Get the latest version of [docker-compose](https://github.com/docker/compose).
2. Build and run the container:
```bash
$ docker-compose up --build
```
You can set the port to use (for both container and host) by prefixing the above command with `PORT=5000 `.
Docker will generate a named volume in which to store persistent application data. You can use `docker inspect` or `docker volume inspect` to reveal the physical location of the volume and edit the configuration, such as:
```
$ docker volume inspect verdaccio_verdaccio
[
{
"Name": "verdaccio_verdaccio",
"Driver": "local",
"Mountpoint": "/var/lib/docker/volumes/verdaccio_verdaccio/_data",
"Labels": null,
"Scope": "local"
}
]
```
## Build your own Docker image
```bash
docker build -t verdaccio .
```
There is also an npm script for building the docker image, so you can also do:
```bash
npm run build:docker
```
Note: The first build takes some minutes to build because it needs to run `npm install`,
and it will take that long again whenever you change any file that is not listed in `.dockerignore`.
If you want to use the docker image on a rpi or a compatible device there is also a dockerfile available.
To build the docker image for raspberry pi execute:
```bash
npm run build:docker:rpi
```
Please note that for any of the above docker commands you need to have docker installed on your machine and the docker executable should be available on your `$PATH`.
## Docker Examples
There is a separate repository that hosts multiple configurations to compose Docker images with `verdaccio`, for instance, as reverse proxy:
[https://github.com/verdaccio/docker-examples](https://github.com/verdaccio/docker-examples)
## Docker Custom Builds
* [docker-verdaccio-gitlab](https://github.com/snics/docker-verdaccio-gitlab)
* [docker-verdaccio](https://github.com/deployable/docker-verdaccio)
* [docker-verdaccio-s3](https://github.com/asynchrony/docker-verdaccio-s3) Private NPM container that can backup to s3
* [docker-verdaccio-ldap](https://github.com/snadn/docker-verdaccio-ldap)
* [verdaccio-ldap](https://github.com/nathantreid/verdaccio-ldap)
* [verdaccio-compose-local-bridge](https://github.com/shingtoli/verdaccio-compose-local-bridge)
* [docker-verdaccio](https://github.com/Global-Solutions/docker-verdaccio)
* [verdaccio-docker](https://github.com/idahobean/verdaccio-docker)
* [verdaccio-server](https://github.com/andru255/verdaccio-server)
* [coldrye-debian-verdaccio](https://github.com/coldrye-docker/coldrye-debian-verdaccio) docker image providing verdaccio from coldrye-debian-nodejs.

View File

@ -1,113 +0,0 @@
---
id: iss-server
title: "Installing on IIS server"
---
These instructions were written for Windows Server 2012, IIS 8, [Node.js 0.12.3](https://nodejs.org/), [iisnode 0.2.16](https://github.com/tjanczuk/iisnode) and [verdaccio 2.1.0](https://github.com/verdaccio/verdaccio).
* Install IIS Install [iisnode](https://github.com/tjanczuk/iisnode).
Make sure you install prerequisites (Url Rewrite Module & node) as explained in the instructions for iisnode.
* Create a new folder in Explorer where you want to host verdaccio.
For example `C:\verdaccio`.
Save [package.json](#packagejson),
[start.js](#startjs)
and [web.config](#webconfig) in this folder.
* Create a new site in Internet Information Services Manager. You can name it whatever you want.
I'll call it verdaccio in these [instructions](http://www.iis.net/learn/manage/configuring-security/application-pool-identities). Specify the path to where you saved all files and a port number.
* Go back to Explorer and give the user that runs the application pool modify rights to the folder you just created. If you've named the new site verdaccio and did not change the app pool, it's running under an ApplicationPoolIdentity and you should give the user IIS AppPool\verdaccio modify rights see instructions if you need help. (You can restrict access later if you want so that it only has modify rights on the iisnode and verdaccio\storage)
* Start a command prompt and execute the commands below to download verdaccio:
````
cd c:\verdaccio
npm install
````
* Make sure you have an inbound rule accepting TCP traffic to the port in Windows Firewall
* Thats it! Now you can navigate to the host and port that you specified
I wanted the `verdaccio` site to be the default site in IIS so I did the following:
* I made sure the .npmrc file in `c:\users{yourname}\` had the registry set to `"registry=http://localhost/"`
* I stopped the "Default Web Site" and only start the site "verdaccio" site in IIS
* I set the bindings to "http", ip address "All Unassigned" on port 80, ok any warning or prompts
These instructions are based on [Host Sinopia in IIS
on Windows](https://gist.github.com/HCanber/4dd8409f79991a09ac75). I had to tweak my web config as per below but you may find the original from the
for mentioned link works better
A default configuration file will be created `c:\verdaccio\verdaccio\config.yaml`
### package.json
````json
{
"name": "iisnode-verdaccio",
"version": "1.0.0",
"description": "Hosts verdaccio in iisnode",
"main": "start.js",
"dependencies": {
"verdaccio": "^2.1.0"
}
}
````
### start.js
````bash
process.argv.push('-l', 'unix:' + process.env.PORT);
require('./node_modules/verdaccio/src/lib/cli.js');
````
### web.config
````xml
<configuration>
<system.webServer>
<modules>
<remove name="WebDAVModule" />
</modules>
<!-- indicates that the start.js file is a node.js application
to be handled by the iisnode module -->
<handlers>
<remove name="WebDAV" />
<add name="iisnode" path="start.js" verb="*" modules="iisnode" resourceType="Unspecified" requireAccess="Execute" />
<add name="WebDAV" path="*" verb="*" modules="WebDAVModule" resourceType="Unspecified" requireAccess="Execute" />
</handlers>
<rewrite>
<rules>
<!-- iisnode folder is where iisnode stores it's logs. These should
never be rewritten -->
<rule name="iisnode" stopProcessing="true">
<match url="iisnode*" />
<action type="None" />
</rule>
<!-- Rewrite all other urls in order for verdaccio to handle these -->
<rule name="verdaccio">
<match url="/*" />
<action type="Rewrite" url="start.js" />
</rule>
</rules>
</rewrite>
<!-- exclude node_modules directory and subdirectories from serving
by IIS since these are implementation details of node.js applications -->
<security>
<requestFiltering>
<hiddenSegments>
<add segment="node_modules" />
</hiddenSegments>
</requestFiltering>
</security>
</system.webServer>
</configuration>
````
### Troubleshooting
- **The web interface does not load when hosted with https as it tries to download scripts over http.**
Make sure that you have correctly mentioned `url_prefix` in verdaccio config. Follow the [discussion](https://github.com/verdaccio/verdaccio/issues/622).

View File

@ -1,55 +0,0 @@
---
id: installation
title: "Installation"
---
Verdaccio is a multiplatform web application. To install it, you need a few prerequisites.
#### Prerequisites
1. Node higher than
- For version `verdaccio@2.x` Node `v4.6.1` is the minimum supported version.
- For version `verdaccio@latest` Node `6.12.0` is the minimum supported version.
2. npm `>=3.x` or `yarn`
3. The web interface supports the `Chrome, Firefox, Edge, and IE9` browsers.
## Installing the CLI
`verdaccio` must be installed globaly using either of the following methods:
Using `npm`
```bash
npm install -g verdaccio
```
or using `yarn`
```bash
yarn global add verdaccio
```
![install verdaccio](/svg/install_verdaccio.gif)
## Basic Usage
Once it has been installed, you only need to execute the CLI command:
```bash
$> verdaccio
warn --- config file - /home/.config/verdaccio/config.yaml
warn --- http address - http://localhost:4873/ - verdaccio/3.0.1
```
For more information about the CLI, please [read the cli section](cli.md).
## Docker Image
`verdaccio` has an official docker image you can use, and in most cases, the default configuration is good enough. For more information about how to install the official image, [read the docker section](docker.md).
## Cloudron
`verdaccio` is also available as a 1-click install on [Cloudron](https://cloudron.io)
[![Install](https://cloudron.io/img/button.svg)](https://cloudron.io/button.html?app=org.eggertsson.verdaccio)

View File

@ -1,99 +0,0 @@
---
id: kubernetes
title: "Kubernetes"
---
You can find instructions to deploy Verdaccio on a Kubernetes cluster on the
[verdaccio/docker-example](https://github.com/verdaccio/docker-examples/tree/master/kubernetes-example)
repository. However, the recommended method to install Verdaccio on a Kubernetes
cluster is to use [Helm](https://helm.sh). Helm is a
[Kubernetes](https://kubernetes.io) package manager which bring multiple
advantages.
## Helm
### Setup Helm
If you haven't used Helm before, you need to setup the Helm controller called
Tiller:
```bash
helm init
```
### Install
Deploy the Helm [stable/verdaccio](https://github.com/kubernetes/charts/tree/master/stable/verdaccio)
chart. In this example we use `npm` as release name:
```bash
helm install --name npm stable/verdaccio
```
### Deploy a specific version
```bash
helm install --name npm --set image.tag=2.6.5 stable/verdaccio
```
### Upgrading Verdaccio
```bash
helm upgrade npm stable/verdaccio
```
### Uninstalling
```bash
helm del --purge npm
```
**Note:** this command delete all the resources, including packages that you may
have previously published to the registry.
### Custom Verdaccio configuration
You can customize the Verdaccio configuration using a Kubernetes *configMap*.
#### Prepare
Copy the [existing configuration](https://github.com/verdaccio/verdaccio/blob/master/conf/full.yaml)
and adapt it for your use case:
```bash
wget https://raw.githubusercontent.com/verdaccio/verdaccio/master/conf/full.yaml -O config.yaml
```
**Note:** Make sure you are using the right path for the storage that is used for
persistency:
```yaml
storage: /verdaccio/storage/data
auth:
htpasswd:
file: /verdaccio/storage/htpasswd
```
#### Deploy the configMap
Deploy the `configMap` to the cluster
```bash
kubectl create configmap verdaccio-config --from-file ./config.yaml
```
#### Deploy Verdaccio
Now you can deploy the Verdaccio Helm chart and specify which configuration to
use:
```bash
helm install --name npm --set customConfigMap=verdaccio-config stable/verdaccio
```
## Rancher Support
[Rancher](http://rancher.com/) is a complete container management platform that makes managing and using containers in production really easy.
* [verdaccio-rancher](https://github.com/lgaticaq/verdaccio-rancher)

View File

@ -1,28 +0,0 @@
---
id: logger
title: "Logger"
---
As any web application, verdaccio has a customisable built-in logger. You can define multiple types of outputs.
```yaml
logs:
# console output
- {type: stdout, format: pretty, level: http}
# file output
- {type: file, path: verdaccio.log, level: info}
# Rotating log stream. Options are passed directly to bunyan. See: https://github.com/trentm/node-bunyan#stream-type-rotating-file
- {type: rotating-file, format: json, path: /path/to/log.jsonl, level: http, options: {period: 1d}}
```
Use `SIGUSR2` to notify the application, the log-file was rotated and it needs to reopen it.
Note: Rotating log stream is not supported in cluster mode. [See here](https://github.com/trentm/node-bunyan#stream-type-rotating-file)
### Configuration
Property | Type | Required | Example | Support | Description
--- | --- | --- | --- | --- | ---
type | string | No | [stdout, file] | all | define the output
path | string | No | verdaccio.log | all | if type is file, define the location of that file
format | string | No | [pretty, pretty-timestamped] | all | output format
level | string | No | [fatal, error, warn, http, info, debug, trace] | all | verbose level

View File

@ -1,64 +0,0 @@
---
id: logo
title: "Verdaccio Logotype"
---
The logotype was designed by __[Breno Rodrigues](https://github.com/rodriguesbreno)__ which
won the [contest](https://github.com/verdaccio/verdaccio/issues/237)
([last stage](https://github.com/verdaccio/verdaccio/issues/328)) and donated his work to this project.
> All logos are licensed under [Creative Commons](https://github.com/verdaccio/verdaccio/blob/master/LICENSE-docs).
Special thanks to *[@Lisapressmar](https://github.com/Lisapressmar)* for her contribution
with multiple image formats and sizes.
## Symbols
__With text__
![symbol tiny with text](/img/logo/symbol/png/logo-small-header-bottom.png)
![symbol medium with text](/img/logo/symbol/png/logo-small-header-bottom@2x.png)
![symbol big with text](/img/logo/symbol/png/logo-small-header-bottom@3x.png)
__SVG__
![symbol svg](/img/logo/symbol/svg/logo-small-header-bottom.svg)
__No text__
![symbol tiny](/img/logo/symbol/png/verdaccio-tiny.png)
![symbol medium](/img/logo/symbol/png/verdaccio-tiny@2x.png)
![symbol big](/img/logo/symbol/png/verdaccio-tiny@3x.png)
__SVG__
![svg format symbol no text](/img/logo/symbol/svg/verdaccio-tiny.svg)
### Black&White
![symbol bw small](/img/logo/symbol/png/verdaccio-blackwhite.png)
![symbol bw medium](/img/logo/symbol/png/verdaccio-blackwhite@2x.png)
![symbol bw big](/img/logo/symbol/png/verdaccio-blackwhite@3x.png)
__SVG__
![symbol bw svg](/img/logo/symbol/svg/verdaccio-blackwhite.svg)
## Banner
![banner small](/img/logo/banner/png/verdaccio-banner.png)
![banner medium](/img/logo/banner/png/verdaccio-banner@2x.png)
![banner big](/img/logo/banner/png/verdaccio-banner@3x.png)

View File

@ -1,42 +0,0 @@
---
id: node-api
title: "Node API"
---
Verdaccio can be invoqued programmatically. The node API was introduced after version `verdaccio@3.0.0-alpha.10`.
## Usage
#### Programmatically
```js
import startServer from 'verdaccio';
startServer(configJsonFormat, 6000, store, '1.0.0', 'verdaccio',
(webServer, addrs, pkgName, pkgVersion) => {
webServer.listen(addr.port || addr.path, addr.host, () => {
console.log('verdaccio running');
});
});
```
## Other implementations
* [verdaccio-server](https://github.com/boringame/verdaccio-server) local npm registry proxy server
```js
// js
import * as verdaccioServer from "verdaccio-server";
verdaccioServer.start();
verdaccioServer.stop();
verdaccioServer.list();
verdaccioServer.stopAll();
verdaccioServer.show();
verdaccioServer.cli();
// windows .net2
verdaccioServer.serviceInstall();
verdaccioServer.serviceUninstall();
verdaccioServer.serviceStart();
verdaccioServer.serviceStop();
verdaccioServer.serviceRestart();
```

View File

@ -1,168 +0,0 @@
---
id: notifications
title: "Notifications"
---
Notify was built primarily to use with Slack's Incoming
webhooks, but will also deliver a simple payload to
any endpoint. Currently only active for `npm publish`
command.
## Usage
An example with a **HipChat**, **Stride** and **Google Hangouts Chat** hook:
> Verdaccio supports any API, feel free to ad more examples.
#### Single notification
```yaml
notify:
method: POST
headers: [{'Content-Type': 'application/json'}]
endpoint: https://usagge.hipchat.com/v2/room/3729485/notification?auth_token=mySecretToken
content: '{"color":"green","message":"New package published: * {{ name }}*","notify":true,"message_format":"text"}'
```
#### Multiple notification
```yaml
notify:
'example-google-chat':
method: POST
headers: [{'Content-Type': 'application/json'}]
endpoint: https://chat.googleapis.com/v1/spaces/AAAAB_TcJYs/messages?key=myKey&token=myToken
content: '{"text":"New package published: `{{ name }}{{#each versions}} v{{version}}{{/each}}`"}'
'example-hipchat':
method: POST
headers: [{'Content-Type': 'application/json'}]
endpoint: https://usagge.hipchat.com/v2/room/3729485/notification?auth_token=mySecretToken
content: '{"color":"green","message":"New package published: * {{ name }}*","notify":true,"message_format":"text"}'
'example-stride':
method: POST
headers: [{'Content-Type': 'application/json'}, {'authorization': 'Bearer secretToken'}]
endpoint: https://api.atlassian.com/site/{cloudId}/conversation/{conversationId}/message
content: '{"body": {"version": 1,"type": "doc","content": [{"type": "paragraph","content": [{"type": "text","text": "New package published: * {{ name }}* Publisher name: * {{ publisher.name }}"}]}]}}'
```
## Template
We use [Handlebars](https://handlebarsjs.com/) as main template engine.
### Format Examples
```
# iterate all versions
{{ name }}{{#each versions}} v{{version}}{{/each}}`"}
# publisher and `dist-tag` package published
{{ publisher.name }} has published {{publishedPackage}}"}
```
### Properties
List of properties accesible via template
* Metadata
* Publisher (who is publishing)
* Package Published (package@1.0.0)
### Metadata
Package metadata that the template has access
```
{
"_id": "@test/pkg1",
"name": "@test/pkg1",
"description": "",
"dist-tags": {
"beta": "1.0.54"
},
"versions": {
"1.0.54": {
"name": "@test/pkg1",
"version": "1.0.54",
"description": "some description",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": {
"name": "Author Name",
"email": "author@domain.com"
},
"license": "MIT",
"dependencies": {
"webpack": "4.12.0"
},
"readmeFilename": "README.md",
"_id": "@ test/pkg1@1.0.54",
"_npmVersion": "6.1.0",
"_nodeVersion": "9.9.0",
"_npmUser": {},
"dist": {
"integrity": "sha512-JlXWpLtMUBAqvVZBvH7UVLhXkGE1ctmXbDjbH/l0zMuG7wVzQ7GshTYvD/b5C+G2vOL2oiIS1RtayA/kKkTwKw==",
"shasum": "29c55c52c1e76e966e706165e5b9f22e32aa9f22",
"tarball": "http://localhost:4873/@test/pkg1/-/@test/pkg1-1.0.54.tgz"
}
}
},
"readme": "# test",
"_attachments": {
"@test/pkg1-1.0.54.tgz": {
"content_type": "application/octet-stream",
"data": "H4sIAAAAAAAAE+y9Z5PjyJIgOJ ...",
"length": 33112
}
},
"time": {}
}
```
### Publisher
You can access to the package publisher information in the `content` of a webhook using the `publisher` object.
See below the `publisher` object type:
```
{
name: string,
groups: string[],
real_groups: string[]
}
```
An example:
```
notify:
method: POST
headers: [{'Content-Type': 'application/json'}]
endpoint: https://usagge.hipchat.com/v2/room/3729485/notification?auth_token=mySecretToken
content: '{"color":"green","message":"New package published: * {{ name }}*. Publisher name: * {{ publisher.name }} *.","notify":true,"message_format":"text"}'
```
**Note:** it's not possible to get the publisher information if the `package.json` file already has the `publisher` property.
### Package Published
You can acces to the package is being published with the keyword `{{publishedPackage}}` as follows.
```
{{ publisher.name }} has published {{publishedPackage}}"}
```
## Configuration
Property | Type | Required | Support | Default | Description
--- | --- | --- | --- | --- | ---
method| string | No | all | | HTTP verb
packagePattern| string | No | all | | Only run this notification if the package name matches the regular expression
packagePatternFlags| string | No | all | | Any flags to be used with the regular expression
headers| array/object | Yes | all | | If this endpoint requires specific headers, set them here as an array of key: value objects.
endpoint| string | Yes | all | | set the URL endpoint for this call
content| string | Yes | all | | any [Handlebar](https://handlebarsjs.com/) expressions

View File

@ -1,150 +0,0 @@
---
id: packages
title: "Package Access"
---
It's a series of contraints that allow or restrict access to the local storage based in specific criteria.
The security constraints remain on the shoulders of the plugin being used, by default `verdaccio` uses the [htpasswd plugin](https://github.com/verdaccio/verdaccio-htpasswd). If you use a different plugin the behaviour might be different. The default plugin does not handle `allow_access` and `allow_publish` by itself, it uses an internal fallback in case the plugin is not ready for it.
For more information about permissions visit [the authentification section in the wiki](auth.md).
### Usage
```yalm
packages:
# scoped packages
'@scope/*':
access: $all
publish: $all
proxy: server2
'private-*':
access: $all
publish: $all
proxy: uplink1
'**':
# allow all users (including non-authenticated users) to read and
# publish all packages
access: $all
publish: $all
proxy: uplink2
```
if none is specified, the default one remains
```yaml
packages:
'**':
access: $all
publish: $authenticated
```
The list of valid groups according the default plugins are
```js
'$all', '$anonymous', '@all', '@anonymous', 'all', 'undefined', 'anonymous'
```
All users recieve all those set of permissions independently of is anonymous or not plus the groups provided by the plugin, in case of `htpasswd` return the username as a group. For instance, if you are logged as `npmUser` the list of groups will be.
```js
// groups without '$' are going to be deprecated eventually
'$all', '$anonymous', '@all', '@anonymous', 'all', 'undefined', 'anonymous', 'npmUser'
```
If you want to protect specific set packages under your group, you need to do something like this. Let's use a `Regex` that covers all prefixed `npmuser-` packages. We recomend using a prefix for your packages, in that way it will be easier to protect them.
```yaml
packages:
'npmuser-*':
access: npmuser
publish: npmuser
```
Restart `verdaccio` and in your console try to install `npmuser-core`.
```bash
$ npm install npmuser-core
npm install npmuser-core
npm ERR! code E403
npm ERR! 403 Forbidden: npmuser-core@latest
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/user/.npm/_logs/2017-07-02T12_20_14_834Z-debug.log
```
You can change the existing behaviour using a different plugin authentication. `verdaccio` just checks whether the user that tried to access or publish a specific package belongs to the right group.
#### Set multiple groups
Defining multiple access groups is fairly easy, just define them with a white space between them.
```yaml
'company-*':
access: admin internal
publish: admin
proxy: server1
'supersecret-*':
access: secret super-secret-area ultra-secret-area
publish: secret ultra-secret-area
proxy: server1
```
#### Blocking access to set of packages
If you want to block the acccess/publish to a specific group of packages. Just do not define `access` and `publish`.
```yaml
packages:
'old-*':
'**':
access: $all
publish: $authenticated
```
#### Blocking proxying a set of specific packages
You might want to block one or several packages from fetching from remote repositories., but, at the same time, allow others to access different *uplinks*.
Let's see the following example:
```yaml
packages:
'jquery':
access: $all
publish: $all
'my-company-*':
access: $all
publish: $authenticated
'@my-local-scope/*':
access: $all
publish: $authenticated
'**':
access: $all
publish: $authenticated
proxy: npmjs
```
Let's describe what we want with the above example:
* I want to host my own `jquery` dependency but I need to avoid proxying it.
* I want all dependencies that match with `my-company-*` but I need to avoid proxying them.
* I want all dependencies that are in the `my-local-scope` scope but I need to avoid proxying them.
* I want proxying for all the rest of the dependencies.
Be **aware that the order of your packages definitions is important and always use double wilcard**. Because if you do not include it `verdaccio` will include it for you and the way that your dependencies are resolved will be affected.
### Configuration
You can define mutiple `packages` and each of them must have an unique `Regex`. The syntax is based on [minimatch glob expressions](https://github.com/isaacs/minimatch).
Property | Type | Required | Example | Support | Description
--- | --- | --- | --- | --- | ---
access | string | No | $all | all | define groups allowed to access the package
publish | string | No | $authenticated | all | define groups allowed to publish
proxy | string | No | npmjs | all | limit look ups for specific uplink
storage | boolean | No | [true,false] | all | TODO
> We higlight that we recommend to not use **allow_access**/**allow_publish** and **proxy_access** anymore, those are deprecated and will soon be removed, please use the short version of each of those (**access**/**publish**/**proxy**).

View File

@ -1,148 +0,0 @@
---
id: plugins
title: "Plugins"
---
Verdaccio is an plugabble aplication. It can be extended in many ways, either new authentication methods, adding
endpoints or using a custom storage.
> If you are interested to develop your own plugin, read the [development](dev-plugins.md) section.
## Usage
### Installation
```bash
$> npm install --global verdaccio-activedirectory
```
`verdaccio` as a sinopia fork it has backward compability with plugins that are compatible with `sinopia@1.4.0`. In such case the installation is the same.
```
$> npm install --global sinopia-memory
```
### Configuration
Open the `config.yaml` file and update the `auth` section as follows:
The default configuration looks like this, due we use a build-in `htpasswd` plugin by default that you can disable just commenting out the following lines.
### Auth Plugin Configuration
```yaml
htpasswd:
file: ./htpasswd
#max_users: 1000
```
and replacing them with (in case you decide to use a `ldap` plugin.
```yaml
auth:
activedirectory:
url: "ldap://10.0.100.1"
baseDN: 'dc=sample,dc=local'
domainSuffix: 'sample.local'
```
#### Multiple Auth plugins
This is tecnically possible, making the plugin order important, as the credentials will be resolved in order.
```yaml
auth:
htpasswd:
file: ./htpasswd
#max_users: 1000
activedirectory:
url: "ldap://10.0.100.1"
baseDN: 'dc=sample,dc=local'
domainSuffix: 'sample.local'
```
### Middleware Plugin Configuration
This is an example how to set up a middleware plugin. All middleware plugins must be defined in the **middlewares** namespace.
```yaml
middlewares:
audit:
enabled: true
```
> You might follow the [audit middle plugin](https://github.com/verdaccio/verdaccio-audit) as base example.
### Store Plugin Configuration
This is an example how to set up a storage plugin. All storage plugins must be defined in the **store** namespace.
```yaml
store:
memory:
limit: 1000
```
> If you define a custom store, the property **storage** in the configuration file will be ignored.
## Legacy plugins
### Sinopia Plugins
(compatible all versions)
* [sinopia-npm](https://www.npmjs.com/package/sinopia-npm): auth plugin for sinopia supporting an npm registry.
* [sinopia-memory](https://www.npmjs.com/package/sinopia-memory): auth plugin for sinopia that keeps users in memory.
* [sinopia-github-oauth-cli](https://www.npmjs.com/package/sinopia-github-oauth-cli).
* [sinopia-crowd](https://www.npmjs.com/package/sinopia-crowd): auth plugin for sinopia supporting atlassian crowd.
* [sinopia-activedirectory](https://www.npmjs.com/package/sinopia-activedirectory): Active Directory authentication plugin for sinopia.
* [sinopia-github-oauth](https://www.npmjs.com/package/sinopia-github-oauth): authentication plugin for sinopia2, supporting github oauth web flow.
* [sinopia-delegated-auth](https://www.npmjs.com/package/sinopia-delegated-auth): Sinopia authentication plugin that delegates authentication to another HTTP URL
* [sinopia-altldap](https://www.npmjs.com/package/sinopia-altldap): Alternate LDAP Auth plugin for Sinopia
* [sinopia-request](https://www.npmjs.com/package/sinopia-request): An easy and fully auth-plugin with configuration to use an external API.
* [sinopia-htaccess-gpg-email](https://www.npmjs.com/package/sinopia-htaccess-gpg-email): Generate password in htaccess format, encrypt with GPG and send via MailGun API to users.
* [sinopia-mongodb](https://www.npmjs.com/package/sinopia-mongodb): An easy and fully auth-plugin with configuration to use a mongodb database.
* [sinopia-htpasswd](https://www.npmjs.com/package/sinopia-htpasswd): auth plugin for sinopia supporting htpasswd format.
* [sinopia-leveldb](https://www.npmjs.com/package/sinopia-leveldb): a leveldb backed auth plugin for sinopia private npm.
* [sinopia-gitlabheres](https://www.npmjs.com/package/sinopia-gitlabheres): Gitlab authentication plugin for sinopia.
* [sinopia-gitlab](https://www.npmjs.com/package/sinopia-gitlab): Gitlab authentication plugin for sinopia
* [sinopia-ldap](https://www.npmjs.com/package/sinopia-ldap): LDAP auth plugin for sinopia.
* [sinopia-github-oauth-env](https://www.npmjs.com/package/sinopia-github-oauth-env) Sinopia authentication plugin with github oauth web flow.
> All sinopia plugins should be compatible with all future verdaccio versions. Anyhow, we encourage contributors to migrate them to the
modern verdaccio API and using the prefix as *verdaccio-xx-name*.
## Verdaccio Plugins
(compatible since 2.1.x)
### Authorization Plugins
* [verdaccio-bitbucket](https://github.com/idangozlan/verdaccio-bitbucket): Bitbucket authentication plugin for verdaccio.
* [verdaccio-bitbucket-server](https://github.com/oeph/verdaccio-bitbucket-server): Bitbucket Server authentication plugin for verdaccio.
* [verdaccio-ldap](https://www.npmjs.com/package/verdaccio-ldap): LDAP auth plugin for verdaccio.
* [verdaccio-active-directory](https://github.com/nowhammies/verdaccio-activedirectory): Active Directory authentication plugin for verdaccio
* [verdaccio-gitlab](https://github.com/bufferoverflow/verdaccio-gitlab): use GitLab Personal Access Token to authenticate
* [verdaccio-gitlab-ci](https://github.com/lab360-ch/verdaccio-gitlab-ci): Enable GitLab CI to authenticate against verdaccio.
* [verdaccio-htpasswd](https://github.com/verdaccio/verdaccio-htpasswd): Auth based on htpasswd file plugin (built-in) for verdaccio
* [verdaccio-github-oauth](https://github.com/aroundus-inc/verdaccio-github-oauth): Github oauth authentication plugin for verdaccio.
* [verdaccio-github-oauth-ui](https://github.com/n4bb12/verdaccio-github-oauth-ui): GitHub OAuth plugin for the verdaccio login button.
### Middleware Plugins
* [verdaccio-audit](https://github.com/verdaccio/verdaccio-audit): verdaccio plugin for *npm audit* cli support (built-in) (compatible since 3.x)
* [verdaccio-profile-api](https://github.com/ahoracek/verdaccio-profile-api): verdacci plugin for *npm profile* cli support and *npm profile set password* for *verdaccio-htpasswd* based authentificaton
### Storage Plugins
(compatible since 3.x)
* [verdaccio-memory](https://github.com/verdaccio/verdaccio-memory) Storage plugin to host packages in Memory
* [verdaccio-s3-storage](https://github.com/remitly/verdaccio-s3-storage) Storage plugin to host packages **Amazon S3**
* [verdaccio-google-cloud](https://github.com/verdaccio/verdaccio-google-cloud) Storage plugin to host packages **Google Cloud Storage**
## Caveats
> Not all these plugins are been tested continuously, some of them might not work at all.
Please if you found any issue feel free to notify the owner of each plugin.

View File

@ -1,44 +0,0 @@
---
id: protect-your-dependencies
title: "Protecting packages"
---
`verdaccio` allows you protect publish, to achieve that you will need to set up correctly your [packages acces](packages).
### Package configuration
Let's see for instance the following set up. You have a set of dependencies what are prefixed with `my-company-*` and you need to protect them from anonymous or another logged user without right credentials.
```yaml
'my-company-*':
access: admin teamA teamB teamC
publish: admin teamA
proxy: npmjs
```
With this configuration, basically we allow to groups **admin** and **teamA** to *publish* and **teamA** **teamB** **teamC** *access* to such dependencies.
### Use case: teamD try to access the dependency
So, if I am logged as **teamD**. I shouldn't be able to access all dependencies that match with `my-company-*` pattern.
```bash
➜ npm whoami
teamD
```
I won't have access to such dependencies and also won't be visible via web for user **teamD**. If I try to access the following will happen.
```bash
➜ npm install my-company-core
npm ERR! code E403
npm ERR! 403 Forbidden: webpack-1@latest
```
or with `yarn`
```bash
➜ yarn add my-company-core
yarn add v0.24.6
info No lockfile found.
[1/4] 🔍 Resolving packages...
error An unexpected error occurred: "http://localhost:5555/webpack-1: unregistered users are not allowed to access package my-company-core".
```

View File

@ -1,28 +0,0 @@
---
id: puppet
title: "Puppet"
---
Install verdaccio for Debian, Ubuntu, Fedora, and RedHat.
# Usage
There are two variants to install verdaccio using this Puppet module:
* Apply-mode (with puppet-apply and no puppetmaster setup needed)
* Master-Agent-mode (with puppet-agent accessing your configuration through the puppetmaster).
In both variants you have to explicitely call "class nodejs {}" in your puppet script because
the puppet-verdaccio module only defines this as a requirement, so you have all the flexibility you want when installing nodejs.
Scroll down for details about Master-Agent-mode variant.
For further information:
[https://github.com/verdaccio/puppet-verdaccio](https://github.com/verdaccio/puppet-verdaccio)
> We are looking for active contributors for this integration, if you are interested
[refers to this ticket](https://github.com/verdaccio/puppet-verdaccio/issues/11).

View File

@ -1,9 +0,0 @@
---
id: source-code
title: "Source Code"
---
`verdaccio` is composed or multiple repositories you might contribute. Look into the **issues** tab whether there is a ticket waiting for you 🤠.
To see the complete list of repositories, [click here](https://github.com/verdaccio/verdaccio/wiki/Repositories).

View File

@ -1,90 +0,0 @@
---
id: reverse-proxy
title: "Reverse Proxy Setup"
---
## Apache
Apache and mod_proxy should not decode/encode slashes and leave them as they are:
````
<VirtualHost *:80>
AllowEncodedSlashes NoDecode
ProxyPass /npm http://127.0.0.1:4873 nocanon
ProxyPassReverse /npm http://127.0.0.1:4873
</VirtualHost>
````
### Configuration with SSL
config.yaml
```yaml
url_prefix: https://npm.your.domain.com
```
Apache virtual server configuration
````
apacheconfig
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName npm.your.domain.com
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/npm.your.domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/npm.your.domain.com/privkey.pem
SSLProxyEngine On
ProxyRequests Off
ProxyPreserveHost On
AllowEncodedSlashes NoDecode
ProxyPass / http://127.0.0.1:4873 nocanon
ProxyPassReverse / http://127.0.0.1:4873
</VirtualHost>
</IfModule>
````
## Nginx
````
server {
listen 80 default_server;
location / {
proxy_pass http://127.0.0.1:4873/;
proxy_set_header Host $host;
}
}
````
## Run behind reverse proxy with different domain and port
If you run verdaccio behind reverse proxy, you may noticed all resource file served as relaticve path, like `http://127.0.0.1:4873/-/static`
To resolve this issue, you should send real domain and port to verdaccio with `Host` header
Nginx configure should look like this:
```nginx
location / {
proxy_pass http://127.0.0.1:4873/;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
```
For this case, `url_prefix` should NOT set in verdaccio config
---
or a sub-directory installation:
```nginx
location ~ ^/verdaccio/(.*)$ {
proxy_pass http://127.0.0.1:4873/$1;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
```
For this case, `url_prefix` should set to `/verdaccio/`
> Note: There is a Slash after install path (`https://your-domain:port/verdaccio/`)!

View File

@ -1,84 +0,0 @@
---
id: server-configuration
title: "Server Configuration"
---
This is mostly basic linux server configuration stuff but I felt it important to document and share the steps I took to get verdaccio running permanently on my server. You will need root (or sudo) permissions for the following.
## Running as a separate user
First create the verdaccio user:
```bash
$ sudo adduser --system --gecos 'Verdaccio NPM mirror' --group --home /var/lib/verdaccio verdaccio
```
Or, in case you do not have `adduser`:
```bash
$ sudo useradd --system --comment 'Verdaccio NPM mirror' --create-home --home-dir /var/lib/verdaccio --shell /sbin/nologin verdaccio
```
You create a shell as the verdaccio user using the following command:
```bash
$ sudo su -s /bin/bash verdaccio
$ cd
```
The `cd` command sends you to the home directory of the verdaccio user. Make sure you run verdaccio at least once to generate the config file. Edit it according to your needs.
## Listening on all addresses
If you want to listen to every external address set the listen directive in the config to:
```yaml
# you can specify listen address (or simply a port)
listen: 0.0.0.0:4873
```
If you are running verdaccio in a Amazon EC2 Instance, [you will need set the listen in change your config file](https://github.com/verdaccio/verdaccio/issues/314#issuecomment-327852203) as is described above.
> Configure Apache or nginx? Please check out the [Reverse Proxy Setup](reverse-proxy.md)
## Keeping verdaccio running forever
You can use node package called ['forever'](https://github.com/nodejitsu/forever) to keep verdaccio running all the time.
First install `forever` globally:
```bash
$ sudo npm install -g forever
```
Make sure you've run verdaccio at least once to generate the config file and write down the created admin user. You can then use the following command to start verdaccio:
```bash
$ forever start `which verdaccio`
```
You can check the documentation for more information on how to use forever.
## Surviving server restarts
You can use `crontab` and `forever` together to start verdaccio after a server reboot.
When you're logged in as the verdaccio user do the following:
```bash
$ crontab -e
```
This might ask you to choose an editor. Pick your favorite and proceed.
Add the following entry to the file:
```
@reboot /usr/bin/forever start /usr/lib/node_modules/verdaccio/bin/verdaccio
```
The locations may vary depending on your server setup. If you want to know where your files are you can use the 'which' command:
```bash
$ which forever
$ which verdaccio
```
## Using systemd
Instead of `forever` you can use `systemd` for starting verdaccio and keeping it running. Verdaccio installation has systemd unit, you only need to copy it:
```bash
$ sudo cp /usr/lib/node_modules/verdaccio/systemd/verdaccio.service /lib/systemd/system/ && sudo systemctl daemon-reload
```
This unit assumes you have configuration in `/etc/verdaccio/config.yaml` and store data in `/var/lib/verdaccio`, so either move your files to those locations or edit the unit.

View File

@ -1,52 +0,0 @@
---
id: ssl
title: "Set up the SSL Certificates"
---
Follow this instructions to configure a SSL certificate to serve NPM registry under HTTPS.
* Update the listen property in your `~/.config/verdaccio/config.yaml`:
````
listen: 'https://your.domain.com/'
````
Once you update the listen and try to run verdaccio again will ask for certificates.
* Generate your certificates
````
$ openssl genrsa -out /Users/user/.config/verdaccio/verdaccio-key.pem 2048
$ openssl req -new -sha256 -key /Users/user/.config/verdaccio/verdaccio-key.pem -out /Users/user/.config/verdaccio/verdaccio-csr.pem
$ openssl x509 -req -in /Users/user/.config/verdaccio/verdaccio-csr.pem -signkey /Users/user/.config/verdaccio/verdaccio-key.pem -out /Users/user/.config/verdaccio/verdaccio-cert.pem
````
* Edit your config file `/Users/user/.config/verdaccio/config.yaml` and add the following section
````
https:
key: /Users/user/.config/verdaccio/verdaccio-key.pem
cert: /Users/user/.config/verdaccio/verdaccio-cert.pem
ca: /Users/user/.config/verdaccio/verdaccio-csr.pem
````
Alternatively, if you have a certificate as `server.pfx` format, you can add the following configuration section. The passphrase is optional and only needed, if your certificate is encrypted.
````
https:
pfx: /Users/user/.config/verdaccio/server.pfx
passphrase: 'secret'
````
More info on the `key`, `cert`, `ca`, `pfx` and `passphrase` arguments on the [Node documentation](https://nodejs.org/api/tls.html#tls_tls_createsecurecontext_options)
* Run `verdaccio` in your command line.
* Open the browser and load `https://your.domain.com:port/`
This instructions are mostly valid under OSX and Linux, on Windows the paths will vary but, the steps are the same.
## Docker
If you are using the Docker image, you have to set the `PROTOCOL` environment variable to `https` as the `listen` argument is provided on the [Dockerfile](https://github.com/verdaccio/verdaccio/blob/master/Dockerfile#L43), and thus ignored from your config file.
You can also set the `PORT` environment variable if you are using a different port than `4873`.

View File

@ -1,7 +0,0 @@
---
id: unit-testing
title: "Unit Testing"
---
Verdaccio has strong focus on unit testing and end to end testing. If you are willing to contribute,
please refer to the following [guide for more information](https://github.com/verdaccio/verdaccio/wiki/Developing-new-tests).

View File

@ -1,85 +0,0 @@
---
id: uplinks
title: "Uplinks"
---
An *uplink* is a link with an external registry that provides acccess to external packages.
![Uplinks](/img/uplinks.png)
### Usage
```yaml
uplinks:
npmjs:
url: https://registry.npmjs.org/
server2:
url: http://mirror.local.net/
timeout: 100ms
server3:
url: http://mirror2.local.net:9000/
baduplink:
url: http://localhost:55666/
```
### Configuration
You can define mutiple uplinks and each of them must have an unique name (key). They can have two properties:
Property | Type | Required | Example | Support | Description | Default
--- | --- | --- | --- | --- | --- | ---
url | string | Yes | https://registry.npmjs.org/ | all | The registry url | npmjs
ca | string | No | ~./ssl/client.crt' | all | SSL path certificate | No default
timeout | string | No | 100ms | all | set new timeout for the request | 30s
maxage | string | No |10m | all | limit maximun failure request | 2m
fail_timeout | string | No |10m | all | defines max time when a request becomes a failure | 5m
max_fails | number | No |2 | all | limit maximun failure request | 2
cache | boolean | No |[true,false] | >= 2.1 | cache all remote tarballs in storage | true
auth | list | No | [see below](uplinks.md#auth-property) | >= 2.5 | assigns the header 'Authorization' [more info](http://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules) | disabled
headers | list | No | authorization: "Bearer SecretJWToken==" | all | list of custom headers for the uplink | disabled
strict_ssl |boolean | No | [true,false] | >= 3.0 | If true, requires SSL certificates be valid. | true
#### Auth property
The `auth` property allows you to use an auth token with an uplink. Using the default environment variable:
```yaml
uplinks:
private:
url: https://private-registry.domain.com/registry
auth:
type: bearer
token_env: true # defaults to `process.env['NPM_TOKEN']`
```
or via a specified environment variable:
```yaml
uplinks:
private:
url: https://private-registry.domain.com/registry
auth:
type: bearer
token_env: FOO_TOKEN
```
`token_env: FOO_TOKEN `internally will use `process.env['FOO_TOKEN']`
or by directly specifying a token:
```yaml
uplinks:
private:
url: https://private-registry.domain.com/registry
auth:
type: bearer
token: "token"
```
> Note: `token` has priority over `token_env`
### You Must know
* Uplinks must be registries compatible with the `npm` endpoints. Eg: *verdaccio*, `sinopia@1.4.0`, *npmjs registry*, *yarn registry*, *JFrog*, *Nexus* and more.
* Setting `cache` to false will help to save space in your hard drive. This will avoid store `tarballs` but [it will keep metadata in folders](https://github.com/verdaccio/verdaccio/issues/391).
* Exceed with multiple uplinks might slow down the lookup of your packages due for each request a npm client does, verdaccio does 1 call for each uplink.
* The (timeout, maxage and fail_timeout) format follow the [NGINX measurement units](http://nginx.org/en/docs/syntax.html)

View File

@ -1,32 +0,0 @@
---
id: use-cases
title: "Use Cases"
---
## Using private packages
You can add users and manage which users can access which packages.
It is recommended that you define a prefix for your private packages, for example "local", so all your private things will look like this: `local-foo`. This way you can clearly separate public packages from private ones.
## Using public packages from npmjs.org
If some package doesn't exist in the storage, server will try to fetch it from npmjs.org. If npmjs.org is down, it serves packages from cache pretending that no other packages exist. Verdaccio will download only what's needed (= requested by clients), and this information will be cached, so if client will ask the same thing second time, it can be served without asking npmjs.org for it.
Example: if you successfully request express@3.0.1 from this server once, you'll able to do that again (with all it's dependencies) anytime even if npmjs.org is down. But say express@3.0.0 will not be downloaded until it's actually needed by somebody. And if npmjs.org is offline, this server would say that only express@3.0.1 (= only what's in the cache) is published, but nothing else.
## Override public packages
If you want to use a modified version of some public package `foo`, you can just publish it to your local server, so when your type `npm install foo`, it'll consider installing your version.
There's two options here:
1. You want to create a separate fork and stop synchronizing with public version.
If you want to do that, you should modify your configuration file so verdaccio won't make requests regarding this package to npmjs anymore. Add a separate entry for this package to *config.yaml* and remove `npmjs` from `proxy` list and restart the server.
When you publish your package locally, you should probably start with version string higher than existing one, so it won't conflict with existing package in the cache.
2. You want to temporarily use your version, but return to public one as soon as it's updated.
In order to avoid version conflicts, you should use a custom pre-release suffix of the next patch version. For example, if a public package has version 0.1.2, you can upload 0.1.3-my-temp-fix. This way your package will be used until its original maintainer updates his public package to 0.1.3.

View File

@ -1,27 +0,0 @@
---
id: webui
title: "Web User Interface"
---
<p align="center"><img src="https://github.com/verdaccio/verdaccio/blob/master/assets/gif/verdaccio_big_30.gif?raw=true"></p>
Verdaccio has a web user interface to display only the private packages and can be customisable.
```yaml
web:
enable: true
title: Verdaccio
logo: logo.png
scope:
```
All access restrictions defined to [protect your packages](protect-your-dependencies.md) will also apply to the Web Interface.
### Configuration
Property | Type | Required | Example | Support | Description
--- | --- | --- | --- | --- | ---
enable | boolean | No | true/false | all | allow to display the web interface
title | string | No | Verdaccio | all | HTML head title description
logo | string | No | http://my.logo.domain/logo.png | all | a URI where logo is located
scope | string | No | \\@myscope | all | If you're using this registry for a specific module scope, specify that scope to set it in the webui instructions header (note: escape @ with \\@)

View File

@ -1,57 +0,0 @@
---
id: what-is-verdaccio
title: "What is Verdaccio?"
---
Verdaccio is a **lightweight private npm proxy registry** built in **Node.js**
## What's a registry
* A repository for packages that implements the **CommonJS Compliant Package Registry specification** for reading package info
* Provide an API compatible with npm clients **(yarn/npm/pnpm)**
* Follow the semantic Versioning compatible **(semver)**
```
$> verdaccio
```
![registry](/svg/verdaccio_server.gif)
## Using Verdaccio
Using verdaccio with any node package manager client is quite straightforward.
![registry](/svg/npm_install.gif)
You can use a custom registry either setting globally for all your projects
```
npm set registry http://localhost:4873
```
or by command line as argument `--registry` in npm (slightly different in yarn)
```
npm install lodash --registry http://localhost:4873
```
## Private
All packages that you publish are private and only accessible based in your configuration.
## Proxy
Verdaccio cache all dependencies by demand and speed up installations in local or private networks.
## Verdaccio in a nutshell
* It's a web app based on Node.js
* It's a private npm registry
* It's a local network proxy
* It's a Pluggable application
* It's a fairly easy install and use
* We offer Docker and Kubernetes support
* It is 100% compatible with yarn, npm and pnpm
* It was **forked** based on `sinopia@1.4.0` and 100% **backward compatible**.
* Verdaccio means **A green color popular in late medieval Italy for fresco painting**.

View File

@ -1,57 +0,0 @@
---
id: windows
title: "Installing As a Windows Service"
---
Loosely based upon the instructions found [here](http://asysadmin.tumblr.com/post/32941224574/running-nginx-on-windows-as-a-service). I crafted the following and it provided me with a fully working verdaccio service installation:
1. Create a directory for verdaccio
* mkdir `c:\verdaccio`
* cd `c:\verdaccio`
2. Install verdaccio locally (I ran into npm issues with global installs)
* npm install verdaccio
3. Create your `config.yaml` file in this location `(c:\verdaccio\config.yaml)`
4. Windows Service Setup
## Using NSSM
ALTERNATIVE METHOD: (WinSW package was missing when I tried to download it)
* Download [NSSM](https://www.nssm.cc/download/) and extract
* Add the path that contains nssm.exe to the PATH
* Open an administrative command
* Run nssm install verdaccio At a minimum you must fill in the Application tab Path,
Startup directory and Arguments fields. Assuming an install with node in the system path and a
location of c:\verdaccio the below values will work:
* Path: `node`
* Startup directory: `c:\verdaccio`
* Arguments: `c:\verdaccio\node_modules\verdaccio\build\lib\cli.js -c c:\verdaccio\config.yaml`
You can adjust other service settings under other tabs as desired. When you are done, click Install service button
* Start the service sc start verdaccio
## Using WinSW
* As of 2015-10-27, WinSW is no longer available at the below location. Please follow the Using NSSM instructions above.
* Download [WinSW](http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/)
* Place the executable (e.g. `winsw-1.9-bin.exe`) into this folder (`c:\verdaccio`) and rename it to `verdaccio-winsw.exe`
* Create a configuration file in `c:\verdaccio`, named `verdaccio-winsw.xml`
with the following configuration `xml verdaccio verdaccio verdaccio node c:\verdaccio\node_modules\verdaccio\src\lib\cli.js -c c:\verdaccio\config.yaml roll c:\verdaccio\ `.
* Install your service
* `cd c:\verdaccio`
* `verdaccio-winsw.exe install`
* Start your service
* `verdaccio-winsw.exe start`
Some of the above config is more verbose than I had expected, it appears as though 'workingdirectory'
is ignored, but other than that, this works for me and allows my verdaccio instance to
persist between restarts of the server, and also restart itself should there be any crashes of the verdaccio process.
## Repositories
* [verdaccio-deamon-windows](https://github.com/davidenke/verdaccio-deamon-windows)

11
website/.gitignore vendored
View File

@ -1,11 +0,0 @@
node_modules
.DS_Store
lib/core/metadata.js
lib/core/MetadataBlog.js
website/translated_docs
website/build/
website/yarn.lock
website/node_modules
website/i18n/*
!website/i18n/en.json

View File

@ -1,103 +0,0 @@
/**
* Copyright (c) 2017-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
const React = require('react');
class Footer extends React.Component {
render() {
return (
<footer className="nav-footer" id="footer">
<section className="sitemap">
<a href={this.props.config.baseUrl} className="nav-home">
<img
src={this.props.config.baseUrl + this.props.config.footerIcon}
alt={this.props.config.title}
width="66"
height="58"
/>
</a>
<div>
<h5>Docs</h5>
<a
href={
this.props.config.baseUrl +
'docs/' +
this.props.language +
'/what-is-verdaccio.html'
}>
Getting Started
</a>
<a
href={
this.props.config.baseUrl +
'docs/' +
this.props.language +
'/docker.html'
}>
Docker
</a>
<a
href={
this.props.config.baseUrl +
'docs/' +
this.props.language +
'/configuration.html'
}>
Configuration
</a>
<a
href={
this.props.config.baseUrl +
'docs/' +
this.props.language +
'/logo'
}>
Logos
</a>
</div>
<div>
<h5>Community</h5>
<a
href={
this.props.config.baseUrl + this.props.language + '/users.html'
}>
User Showcase
</a>
<a
href="https://stackoverflow.com/search?q=verdaccio" target="_blank">
Stack Overflow
</a>
<a href="http://chat.verdaccio.org" target="_blank">Project Chat</a>
<a href="https://twitter.com/verdaccio_npm" target="_blank">
<img
alt="Follow Verdaccio on Twitter"
src="https://img.shields.io/twitter/follow/verdaccio_npm.svg?label=Follow+Verdaccio&style=social"
/>
</a>
</div>
<div>
<h5>More</h5>
<a href="https://medium.com/verdaccio" target="_blank">Blog</a>
<a href="https://github.com/verdaccio" target="_blank">GitHub</a>
<a
className="github-button"
href={this.props.config.repoUrl}
data-icon="octicon-star"
data-count-href="/verdaccio/verdaccio/stargazers"
data-show-count={true}
data-count-aria-label="# stargazers on GitHub"
aria-label="Star this project on GitHub">
Star
</a>
</div>
</section>
</footer>
);
}
}
module.exports = Footer;

View File

@ -1,100 +0,0 @@
admons:
- name: Trent Earl
github: trentearl
role: founder
- name: John Wilkinson
github: jmwilkinson
role: founder
- name: Juan Picado
github: juanpicado
twitter: jotadeveloper
role: admin/core
- name: Ayush Sharma
github: ayusharma
twitter: ayusharma_
role: admin/core
- name: Sergio Hg
github: sergiohgz
role: core
- name: Meeeeow
github: Meeeeow
role: core
- name: Priscila
github: priscilawebdev
role: core
maintainers:
- name: Verdaccio
github: verdacciobot
twitter: verdaccio_npm
role: bot
- name: Roger Meier
github: bufferoverflow
active: true
- name: Cameron Little
github: apexskier
active: true
- name: Keli Grubb
github: kgrubb
active: true
- name: Lucius Gaitán
github: lgaitan
active: true
- name: Diego Louzán
github: dlouzan
active: true
- name: Dharmender-Singh
github: Dharmender-Singh
active: true
translators:
spanish:
- name: María Eugenia Lucena
crowdin: marugy99
role: proofreader
- name: Samuel Miller
crowdin: SamuelLMiller
role: translator
- name: isabella394
crowdin: isabella394
role: translator
- name: Alejandro Estévez
crowdin: acrywhif
role: translator
- name: José Peralta
crowdin: Josedpg11
role: translator
chinese:
- name: sunray
crowdin: sunray
role: proofreader
- name: aafeng
crowdin: aafeng
role: proofreader
- name: susanli3769
crowdin: emmali73
role: translator
- name: Samuel Miller
crowdin: SamuelLMiller
role: translator
- name: Aaron Li
crowdin: AaronLi
role: translator
- name: victory
crowdin: victory622
role: translator
- name: breathewind
crowdin: breathewind
role: translator
french:
- name: Léon Cédric
crowdin: leyt
role: proofreader
- name: Avoine
crowdin: ahmedess
role: translator
italian:
- name: mcassani
crowdin: mcassani
role: proofreader
- name: Erika Scanu
crowdin: akireuna
role: translator

View File

@ -1,88 +0,0 @@
{
"_comment": "تم إنشاء هذا الملف تلقائيًا بواسطة write-translations.js",
"localized-strings": {
"next": "التالي",
"previous": "السَّابق",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "المساهمة في Verdaccio",
"dev-plugins": "تطوير الإضافات",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "التنصيب",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "الإشعارات",
"packages": "Package Access",
"plugins": "الإضافات",
"protect-your-dependencies": "حماية الحُزم",
"puppet": "دمية متحركة",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "ما هو Verdaccio؟",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "المساعدة",
"GitHub": "GitHub",
"Team": "الفريق",
"Donate": "تبرَّع",
"Introduction": "المقدمة",
"Configuration": "Configuration",
"Server": "الخادم",
"Plugins": "الإضافات",
"DevOps": "DevOps",
"Development": "التطوير",
"Guides": "الإرشادات"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "تعرف على المزيد باستخدام [التوثيق على هذا الموقع.] (/ docs / en / installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "طرح أسئلة حول التَّوثيق والمشروع",
"Join the community|no description given": "الإنضمام إلى المجتمع",
"Find out what's new with this project|no description given": "تعرف على الجديد في هذا المشروع",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "هل تحتاج مساعدة؟",
"This project is maintained by a dedicated group of people.|statement made to reader": "يتم الحفاظ على هذا المشروع من قبل مجموعة مخصصة من الناس.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "تعرف على المزيد حول Verdaccio باستخدام [التوثيق على هذا الموقع.] (/ docs / en / installation.html)",
"You can follow and contact us on|no description given": "يمكنك متابعتنا والاتصال بنا على",
"and also you can chat with the Verdaccio community at|no description given": "ويمكنك أيضا الدردشة مع مجموعة Verdaccio في",
"If the documentation is not enough help, you can try browsing into our|no description given": "إذا لم يكن التوثيق كافي للمساعدة، بإمكانك أن تجرب التصفح",
"This project is maintained by the Verdaccio community.|no description given": "يتم الحفاظ على هذا المشروع بواسطة مجموعة Verdaccio.",
"Get Started|no description given": "البدء",
"Contribute|no description given": "المساهمة",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "العديد من المطورين الرائعين يتمتعون بالفعل بـ Verdaccio ، انضم إلى المجموعة!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "من الذي يستخدم هذا؟",
"This project is used by all these people|no description given": "يُستخدَم هذا المشروع من طرف جميع هؤلاء الناس",
"More|no description given": "المزيد",
"Users|no description given": "المستخدمين",
"This project is used by many folks|no description given": "يُستخدَم هذا المشروع من قبل العديد من الناس",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "هل أنت تستخدم هذا المشروع؟ لا تخجل و قم باضافة شعار الشركة أو المشروع الخاص بك.",
"Add your company|no description given": "قم باضافة الشركة الخاصة بك",
"Help Translate|recruit community translators for your project": "قم بالمساعدة في الترجمة",
"Edit this Doc|recruitment message asking to edit the doc source": "تحرير",
"Translate this Doc|recruitment message asking to translate the docs": "الترجمة"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Diese Datei wurde automatisch generiert von write-translations.js",
"localized-strings": {
"next": "Nächste",
"previous": "Vorherige",
"tagline": "Verdaccio · Eine einfache private npm Proxy-Registrierung",
"ansible": "Ansible",
"authentification": "Authentifizierung",
"build": "Den Quellcode erzeugen",
"chef": "Kochbuch",
"ci": "Continuous Integration",
"cli": "Befehlszeilen-Tool",
"configuration": "Konfigurationsdatei",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Entwicklung von Plugins",
"docker": "Docker",
"iss-server": "Auf IIS-Server installieren",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Benachrichtigungen",
"packages": "Paket-Zugang",
"plugins": "Plugins",
"protect-your-dependencies": "Pakete schützen",
"puppet": "Puppet",
"source-code": "Quellcode",
"reverse-proxy": "Reverse-Proxy-Setup",
"server-configuration": "Server-Konfiguration",
"ssl": "SSL-Zertifikate einrichten",
"unit-testing": "Unit-Tests",
"uplinks": "Uplinks",
"use-cases": "Use-Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "Was ist Verdaccio?",
"windows": "Als Windows-Dienst installieren",
"Docs": "Dokumentation",
"Blog": "Blog",
"Help": "Hilfe",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Spenden",
"Introduction": "Einführung",
"Configuration": "Konfiguration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Entwicklung",
"Guides": "Ratgeber"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Erfahren Sie mehr über die [Dokumentation auf dieser Seite.] (/ docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Stellen Sie Fragen über die Dokumentation und das Projekt",
"Join the community|no description given": "Werde Teil der Community",
"Find out what's new with this project|no description given": "Finden Sie heraus, was neu bei diesem Projekt ist",
"Stay up to date|no description given": "Up to date bleiben",
"Need help?|no description given": "Brauchen Sie Hilfe?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Erste Schritte",
"Contribute|no description given": "Einen Beitrag leisten",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Wer nutzt das?",
"This project is used by all these people|no description given": "Dieses Projekt wird von diesen Leuten verwendet",
"More|no description given": "Mehr",
"Users|no description given": "Benutzer",
"This project is used by many folks|no description given": "Dieses Projekt wird von vielen Leuten verwendet",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Verwenden Sie dieses Projekt? Scheuen Sie sich nicht und fügen Sie Ihr Unternehmen/Projekt-Logo hinzu.",
"Add your company|no description given": "Fügen Sie Ihr Unternehmen hinzu",
"Help Translate|recruit community translators for your project": "Hilf bei der Übersetzung",
"Edit this Doc|recruitment message asking to edit the doc source": "Bearbeiten",
"Translate this Doc|recruitment message asking to translate the docs": "Übersetzen"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Help",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Este archivo es auto generado por write-translations.js",
"localized-strings": {
"next": "Siguiente",
"previous": "Anterior",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Autentificación",
"build": "Construir el código fuente",
"chef": "Libro de cocina de chef",
"ci": "Integración continua",
"cli": "Herramienta de línea de comando",
"configuration": "Archivo de Configuración",
"contributing": "Contribuye a Verdaccio",
"dev-plugins": "Desarrollando Extensiones",
"docker": "Docker",
"iss-server": "Instalando en un servidor IIS",
"installation": "Instalación",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notificaciones",
"packages": "Acceso a paquetes",
"plugins": "Extensiones",
"protect-your-dependencies": "Protegiendo paquetes",
"puppet": "Puppet",
"source-code": "Código fuente",
"reverse-proxy": "Configuración de proxy inverso",
"server-configuration": "Configuración del Servidor",
"ssl": "Configurar certificados SSL",
"unit-testing": "Tests Unitario",
"uplinks": "Uplinks",
"use-cases": "Casos de Uso",
"webui": "Web User Interface2",
"what-is-verdaccio": "Qué es Verdaccio?",
"windows": "Instalando como Servicio en Windows",
"Docs": "Documentación",
"Blog": "Blog",
"Help": "Ayuda",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introducción",
"Configuration": "Configuración",
"Server": "Servidor",
"Plugins": "Extensiones",
"DevOps": "DevOps",
"Development": "Desarrollo",
"Guides": "Guías"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Aprende mas leyendo la [documentación en este sitio.](/docs/es-Es/installation.html)",
"Browse Docs|no description given": "Navegar Documentación",
"Ask questions about the documentation and project|no description given": "Haz preguntas sobre la documentación y el proyecto",
"Join the community|no description given": "Únete a la comunidad",
"Find out what's new with this project|no description given": "Entérate que hay de nuevo en este proyecto",
"Stay up to date|no description given": "Mantente actualizado",
"Need help?|no description given": "Necesitas ayuda?",
"This project is maintained by a dedicated group of people.|statement made to reader": "Este proyecto es mantenido por un grupo de personas dedicadas.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Aprenda mucho mas sobre Verdaccio usando la [documentación en este sitio.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "Puedes seguirnos o contactarnos en",
"and also you can chat with the Verdaccio community at|no description given": "y también puedes hablar con nuestra comunidad en",
"If the documentation is not enough help, you can try browsing into our|no description given": "Si la documentación no ofrece demasiada ayuda, puedes tratar de navegar en nuestra",
"This project is maintained by the Verdaccio community.|no description given": "Este proyecto es mantenido por la comunidad de Verdaccio.",
"Get Started|no description given": "Empezar",
"Contribute|no description given": "Contribuye",
"Thats it ! Enjoy your private package manager.|no description given": "Eso es todo ! Disfruta tu registro privado.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Muchos grandes desarrolladores ya están disfrutando de Verdaccio, ¡Únete a la comunidad!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** y **pnpm** son parte del ambiente de desarrollo e intentamos mantenernos al día con las últimas actualizaciones.",
"The most popular npm clients are supported|no description given": "Los clientes *npm* mas populares son compatibles",
"We have an official **Docker** image ready to use|no description given": "Ofrecemos una imagen oficial en **Docker** lista para usar",
"and **Kubernetes Helm** support for easy deployment|no description given": "y soporte de **Kubernetes Helm** para fácil despliegue",
"Making the DevOps work easy|no description given": "Facilitando el trabajo de los DevOps",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio esta basado en extensiones, autenticación, soporte para *middleware* y almacenamiento. Solo elige uno o crea el tuyo propio.",
"Plugin Support|no description given": "Soporte de Extensiones",
"Who's Using This?|no description given": "Quién está usando esto?",
"This project is used by all these people|no description given": "Este proyecto es usado por todas estas personas",
"More|no description given": "Más",
"Users|no description given": "Usuarios",
"This project is used by many folks|no description given": "Este proyecto es usado por mucha gente",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Estas usando este proyecto? No tengas vergüenza y agrega el logotipo de tu compañia/proyecto.",
"Add your company|no description given": "Agrega tu compañia",
"Help Translate|recruit community translators for your project": "Ayuda con traducciones",
"Edit this Doc|recruitment message asking to edit the doc source": "Editar",
"Translate this Doc|recruitment message asking to translate the docs": "Traducir"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Ce fichier est généré automatiquement par write-translations.js",
"localized-strings": {
"next": "Suivant",
"previous": "Précédent",
"tagline": "Verdaccio · Un journal proxy npm léger et privé",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Compiler le code source",
"chef": "Chef Cookbook",
"ci": "Intégration Continue",
"cli": "Outil de Ligne de Commande",
"configuration": "Fichier de Configuration",
"contributing": "Contribuer à Verdaccio",
"dev-plugins": "Développement des Plugins",
"docker": "Docker",
"iss-server": "Installation sur le serveur IIS",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Enregistreur",
"logo": "Logo de Verdaccio",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Paquet d'accès",
"plugins": "Plugins",
"protect-your-dependencies": "Protection des paquets",
"puppet": "Puppet",
"source-code": "Code Source",
"reverse-proxy": "Configuration du Proxy Inverse",
"server-configuration": "Configuration du Serveur",
"ssl": "Configurer les Certificats SSL",
"unit-testing": "Test unitaire",
"uplinks": "Uplinks",
"use-cases": "Cas dutilisation",
"webui": "Interface d'Utilisateur Web2",
"what-is-verdaccio": "Qu'est ce que Verdaccio?",
"windows": "Installation en tant que Service Windows",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Aide",
"GitHub": "GitHub",
"Team": "Équipe",
"Donate": "Faire un don",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Serveur",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Développement",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "En savoir plus à laide de la [documentation sur ce site.] (/docs/en/installation.html)",
"Browse Docs|no description given": "Parcourir les Docs",
"Ask questions about the documentation and project|no description given": "Posez des questions sur la documentation et le projet",
"Join the community|no description given": "Rejoignez la communauté",
"Find out what's new with this project|no description given": "Découvrez les nouveautés de ce projet",
"Stay up to date|no description given": "Restez à jour",
"Need help?|no description given": "Besoin daide?",
"This project is maintained by a dedicated group of people.|statement made to reader": "Ce projet est soutenu par un groupe de personnes dévouées.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "En savoir plus sur Verdaccio en utilisant la [documentation sur ce site.] (/docs/en/installation.html)",
"You can follow and contact us on|no description given": "Vous pouvez nous suivre et nous contacter sur",
"and also you can chat with the Verdaccio community at|no description given": "et aussi vous pouvez discuter avec la communauté Verdaccio sur",
"If the documentation is not enough help, you can try browsing into our|no description given": "Si la documentation noffre pas assez daides, vous pouvez essayer la navigation dans notre",
"This project is maintained by the Verdaccio community.|no description given": "Ce projet est soutenu par la communauté Verdaccio.",
"Get Started|no description given": "Commencer",
"Contribute|no description given": "Contribuer",
"Thats it ! Enjoy your private package manager.|no description given": "Voilà ! Profitez de votre gestionnaire de paquets privé.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Beaucoup de grands développeurs jouissent déjà de Verdaccio, rejoignez la communauté!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** et **pnpm** font partie de tous les flux de développement que nous essayons de suivre avec les dernières mises à jour.",
"The most popular npm clients are supported|no description given": "Les clients npm les plus populaires sont supportés",
"We have an official **Docker** image ready to use|no description given": "Nous disposons d'une image **Docker** officielle prête à l'emploi",
"and **Kubernetes Helm** support for easy deployment|no description given": "et assistance pour **Kubernetes Helm** pour une distribution aisée",
"Making the DevOps work easy|no description given": "Rendant le travail des DevOps facile",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio est basé sur les extensions, lauthentification, et le support des middlewares et du stockage. Choisissez-en un ou créez le vôtre.",
"Plugin Support|no description given": "Support des Plugins",
"Who's Using This?|no description given": "Qui se sert de cela?",
"This project is used by all these people|no description given": "Ce projet est utilisé par tous ces gens",
"More|no description given": "Plus",
"Users|no description given": "Utilisateurs",
"This project is used by many folks|no description given": "Ce projet est utilisé par beaucoup de gens",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Utilisez-vous ce projet? Ne soyez pas timide et ajoutez le logo de votre entreprise/projet.",
"Add your company|no description given": "Ajoutez votre entreprise",
"Help Translate|recruit community translators for your project": "Aidez à traduire",
"Edit this Doc|recruitment message asking to edit the doc source": "Editer",
"Translate this Doc|recruitment message asking to translate the docs": "Traduire"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Help",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Questo file è generato automaticamente da write-translations.js",
"localized-strings": {
"next": "Seguente",
"previous": "Precedente",
"tagline": "Verdaccio · Un registro proxy npm leggero e privato",
"ansible": "Ansible",
"authentification": "Autenticazione",
"build": "Compilare il codice sorgente",
"chef": "Chef Cookbook",
"ci": "Integrazione continua",
"cli": "Strumento riga di comando",
"configuration": "File di configurazione",
"contributing": "Contribuire a Verdaccio",
"dev-plugins": "Sviluppare Estensioni",
"docker": "Docker",
"iss-server": "Installazione su IIS server",
"installation": "Installazione",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Logo di Verdaccio",
"node-api": "Node API",
"notifications": "Notifiche",
"packages": "Accesso al pacchetto",
"plugins": "Estensioni",
"protect-your-dependencies": "Protezione dei pacchetti",
"puppet": "Puppet",
"source-code": "Codice sorgente",
"reverse-proxy": "Configurazione di Proxy inverso",
"server-configuration": "Configurazione del server",
"ssl": "Configurare i certificati SSL",
"unit-testing": "Test Unità",
"uplinks": "Uplink",
"use-cases": "Casi di utilizzo",
"webui": "Utente Web Interface2",
"what-is-verdaccio": "Cos'è Verdaccio?",
"windows": "Installazione come servizio di Windows",
"Docs": "Documenti",
"Blog": "Blog",
"Help": "Aiuto",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donazioni",
"Introduction": "Introduzione",
"Configuration": "Configurazione",
"Server": "Server",
"Plugins": "Estensioni",
"DevOps": "DevOps",
"Development": "Sviluppo",
"Guides": "Guide"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Per saperne di più utilizza la [documentazione in questo sito.](/docs/en/installation.html)",
"Browse Docs|no description given": "Sfoglia documenti",
"Ask questions about the documentation and project|no description given": "Fai domande sulla documentazione e sul progetto",
"Join the community|no description given": "Unisciti alla community",
"Find out what's new with this project|no description given": "Scopri cosa c'è di nuovo in questo progetto",
"Stay up to date|no description given": "Rimani aggiornato",
"Need help?|no description given": "Hai bisogno di aiuto?",
"This project is maintained by a dedicated group of people.|statement made to reader": "Questo progetto è curato da un gruppo di persone dedicate.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Per saperne di più su Verdaccio utilizza la [documentazione su questo sito.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "Puoi seguirci e contattarci su",
"and also you can chat with the Verdaccio community at|no description given": "e inoltre puoi chattare con la community di Verdaccio su",
"If the documentation is not enough help, you can try browsing into our|no description given": "Se la documentazione non offre sufficiente aiuto, puoi provare a navigare nel nostro",
"This project is maintained by the Verdaccio community.|no description given": "Questo progetto è a cura della community di Verdaccio.",
"Get Started|no description given": "Iniziare",
"Contribute|no description given": "Contribuire",
"Thats it ! Enjoy your private package manager.|no description given": "È tutto! Goditi il tuo nuovo gestore privato del pacchetto.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Molti grandi sviluppatori stanno già utilizzando Verdaccio, unisciti alla community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** e **pnpm** fanno parte di ogni flusso di sviluppo che cerchiamo di tenere al passo con gli ultimi aggiornamenti.",
"The most popular npm clients are supported|no description given": "I client di npm più popolari sono supportati",
"We have an official **Docker** image ready to use|no description given": "Abbiamo un'immagine ufficiale su **Docker** pronta per l'uso",
"and **Kubernetes Helm** support for easy deployment|no description given": "e il supporto a **Kubernetes Helm** per una facile distribuzione",
"Making the DevOps work easy|no description given": "Facilitare il lavoro del DevOps",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio è basato su estensioni, autenticazione, supporto per middleware e archiviazione. Scegli uno di questi o crea il tuo personalizzato.",
"Plugin Support|no description given": "Supporto delle estensioni",
"Who's Using This?|no description given": "Chi lo sta utilizzando?",
"This project is used by all these people|no description given": "Questo progetto viene utilizzato da tutte queste persone",
"More|no description given": "Più",
"Users|no description given": "Utenti",
"This project is used by many folks|no description given": "Questo progetto viene utilizzato da molte persone",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Stai utilizzando questo progetto? Non essere timido e aggiungi il logo della tua azienda/progetto.",
"Add your company|no description given": "Aggiungi la tua azienda",
"Help Translate|recruit community translators for your project": "Aiuta a tradurre",
"Edit this Doc|recruitment message asking to edit the doc source": "Modifica",
"Translate this Doc|recruitment message asking to translate the docs": "Traduci"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Help",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "다음",
"previous": "이전",
"tagline": "Verdaccio - 경량 사설 npm 프록시 레지스트리",
"ansible": "Ansible",
"authentification": "인증",
"build": "소스코드 빌드",
"chef": "Chef Cookbook",
"ci": "지속적인 통합",
"cli": "명령행 도구",
"configuration": "구성 파일",
"contributing": "Verdaccio에 기여하기",
"dev-plugins": "플러그인 개발하기",
"docker": "Docker",
"iss-server": "IIS 서버에 설치하기",
"installation": "설치",
"kubernetes": "Kubernetes",
"logger": "로거",
"logo": "Verdaccio 로고",
"node-api": "Node API",
"notifications": "알림",
"packages": "패키지 접근",
"plugins": "플러그인",
"protect-your-dependencies": "패키지 보호하기",
"puppet": "Puppet",
"source-code": "소스코드",
"reverse-proxy": "리버스 프록시 설정",
"server-configuration": "서버 구성",
"ssl": "SSL 인증서 설정하기",
"unit-testing": "유닛 테스트",
"uplinks": "업링크",
"use-cases": "활용사례",
"webui": "웹 사용자 인터페이스2",
"what-is-verdaccio": "Verdaccio는 무엇인가요?",
"windows": "윈도우에서 설치",
"Docs": "문서",
"Blog": "블로그",
"Help": "도움말",
"GitHub": "GitHub",
"Team": "팀",
"Donate": "후원",
"Introduction": "소개",
"Configuration": "구성",
"Server": "서버",
"Plugins": "플러그인",
"DevOps": "DevOps",
"Development": "개발",
"Guides": "가이드"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "[여기서](/docs/en/installation.html) 더 알아보기",
"Browse Docs|no description given": "문서 찾기",
"Ask questions about the documentation and project|no description given": "문서 및 프로젝트에 대해 물어보세요",
"Join the community|no description given": "커뮤니티 가입하기",
"Find out what's new with this project|no description given": "프로젝트의 새로운 업데이트에 대해 알아보세요",
"Stay up to date|no description given": "최신 상태로 유지",
"Need help?|no description given": "도움이 필요하신가요?",
"This project is maintained by a dedicated group of people.|statement made to reader": "이 프로젝트는 열성적인 그룹의 구성원들로 인해 유지되고 있습니다.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "[여기서](/docs/en/installation.html) 더 알아보기",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Ten plik jest automatycznie wygenerowany przez write-translations.js",
"localized-strings": {
"next": "Następny",
"previous": "Poprzedni",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Uwierzytelnianie",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Narzędzie wiersza poleceń",
"configuration": "Plik konfiguracyjny",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Tworzenie wtyczek",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Instalacja",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Logotyp Verdaccio",
"node-api": "Node API",
"notifications": "Powiadomienia",
"packages": "Package Access",
"plugins": "Wtyczki",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Kod źródłowy",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Konfiguracja serwera",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Instalacja jako Usługa systemu Windows",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Pomoc",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Serwer",
"Plugins": "Wtyczki",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Poradniki"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Zadaj pytanie na temat dokumentacji i projektu",
"Join the community|no description given": "Dołącz do społeczności",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Dowiedz się więcej o Verdaccio za pomocą [dokumentacji na tej stronie.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "Możesz nas obserwować oraz skontaktować się przez",
"and also you can chat with the Verdaccio community at|no description given": "można również porozmawiać ze społecznością Verdaccio na",
"If the documentation is not enough help, you can try browsing into our|no description given": "Jeśli dokumentacja nie jest wystarczającą pomocą, spróbuj przeglądania naszych",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Pierwsze kroki",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "Projekt ten jest używany przez wszystkich tych ludzi",
"More|no description given": "Więcej",
"Users|no description given": "Użytkownicy",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Używasz tego projektu? Nie wstydź się i dodaj logo swojej firmy/projektu.",
"Add your company|no description given": "Dodaj swoją firmę",
"Help Translate|recruit community translators for your project": "Pomóż tłumaczyć",
"Edit this Doc|recruitment message asking to edit the doc source": "Edycja",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Este arquivo é gerado automaticamente pelo script write-translations.js",
"localized-strings": {
"next": "Próximo",
"previous": "Anterior",
"tagline": "Um simples e eficiente registro privado para npm",
"ansible": "Ansible",
"authentification": "Autenticação",
"build": "Usando a partir do codigo fonte",
"chef": "Livro de receitas do Chef",
"ci": "Integração contínua",
"cli": "Utilitário da Linha de Comando",
"configuration": "Arquivo de Configuração",
"contributing": "Contribuindo com o Verdaccio",
"dev-plugins": "Criando Plugins",
"docker": "Docker",
"iss-server": "Instalando em um Servidor ISS",
"installation": "Instalação",
"kubernetes": "Kubernetes",
"logger": "Logs",
"logo": "Verdaccio Logotipo",
"node-api": "Api Node",
"notifications": "Notificações",
"packages": "Permissões dos Pacotes",
"plugins": "Plugins",
"protect-your-dependencies": "Protegendo seus pacotes",
"puppet": "Puppet",
"source-code": "Código Fonte",
"reverse-proxy": "Configuração de Proxy Reverso",
"server-configuration": "Configuração do Servidor",
"ssl": "Configurar SSL",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Casos de uso",
"webui": "Web User Interface2",
"what-is-verdaccio": "O que é o Verdaccio?",
"windows": "Instalando como um Serviço no Windows",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Ajuda",
"GitHub": "GitHub",
"Team": "Equipe",
"Donate": "Doação",
"Introduction": "Introdução",
"Configuration": "Configuração",
"Server": "Servidor",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Desenvolvimento",
"Guides": "Tutoriais"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Saiba mais, acessando a [documentação.](/docs/en/installation.html)",
"Browse Docs|no description given": "Documentação",
"Ask questions about the documentation and project|no description given": "Faça perguntas sobre a documentação e o projeto",
"Join the community|no description given": "Faça parte",
"Find out what's new with this project|no description given": "Descubra todas as novidades sobre o projeto",
"Stay up to date|no description given": "Saiba as Novidades",
"Need help?|no description given": "Precisa de Ajuda?",
"This project is maintained by a dedicated group of people.|statement made to reader": "Este projeto é mantido por um grupo dedicado de pessoas.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Saiba mais sobre o projeto acessando a [documentação](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "Você pode seguir e nos contatar",
"and also you can chat with the Verdaccio community at|no description given": "e também você pode conversar com a comunidade de Verdaccio no",
"If the documentation is not enough help, you can try browsing into our|no description given": "Se a documentação não é ajuda suficiente, você pode tentar navegar em nosso",
"This project is maintained by the Verdaccio community.|no description given": "Este projeto é mantido pela Comunidade Verdaccio.",
"Get Started|no description given": "Primeiros Passos",
"Contribute|no description given": "Contribuir",
"Thats it ! Enjoy your private package manager.|no description given": "Tudo pronto! Aproveite o seu novo gerenciador de pacotes privado.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Vários desenvolvedores já estão desfrutando Verdaccio, participe da Comunidade!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "* * npm * *, * * fios * * e * * pnpm * * fazem parte de qualquer fluxo de trabalho de desenvolvimento tentamos apanhar com as atualizações mais recentes.",
"The most popular npm clients are supported|no description given": "Os maioria dos clientes npm são suportados",
"We have an official **Docker** image ready to use|no description given": "Temos uma imagem * * Docker * * pronto para uso",
"and **Kubernetes Helm** support for easy deployment|no description given": "e * * Kubernetes Helm * * suporte para facilitar a implantação",
"Making the DevOps work easy|no description given": "Facilitando o trabalho de DevOps",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio é plugin baseado, autenticação, suporte middleware e armazenamento. Basta escolher um ou criar seu personalizado.",
"Plugin Support|no description given": "Suporte a plugins",
"Who's Using This?|no description given": "Quem está usando?",
"This project is used by all these people|no description given": "Este projeto é usado por essas pessoas",
"More|no description given": "Mais",
"Users|no description given": "Usuários",
"This project is used by many folks|no description given": "Este projeto é usado por vários",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Você está usando este projeto? Não se acanhe e adicionar o seu logotipo de empresa/projeto.",
"Add your company|no description given": "Adicionar sua empresa",
"Help Translate|recruit community translators for your project": "Ajude-nos a Traduzir",
"Edit this Doc|recruitment message asking to edit the doc source": "Editar",
"Translate this Doc|recruitment message asking to translate the docs": "Traduzir"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Help",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Этот файл был сгенерирован автоматически при помощи write-translations.js",
"localized-strings": {
"next": "Следующая",
"previous": "Предыдущая",
"tagline": "Verdaccio · Лёгкий приватный прокси для npm реестра",
"ansible": "Ансибл",
"authentification": "Аутентификация",
"build": "Сборка исходного кода",
"chef": "Поваренная книга шеф-повара",
"ci": "Непрерывная интеграция",
"cli": "Инструмент командной строки",
"configuration": "Файл конфигурации",
"contributing": "Содействие Verdaccio",
"dev-plugins": "Разработка плагинов",
"docker": "Docker",
"iss-server": "Установка на сервере IIS",
"installation": "Установка",
"kubernetes": "Kubernetes",
"logger": "Логи",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Уведомления",
"packages": "Доступ к пакетам",
"plugins": "Плагины",
"protect-your-dependencies": "Защита пакетов",
"puppet": "Puppet",
"source-code": "Исходный код",
"reverse-proxy": "Настройка обратного прокси-сервера",
"server-configuration": "Конфигурация сервера",
"ssl": "Настройка SSL-сертификатов",
"unit-testing": "Модульное тестирование",
"uplinks": "Uplinks",
"use-cases": "Примеры использования",
"webui": "Пользовательский Веб-Интерфейс2",
"what-is-verdaccio": "Что такое Verdaccio?",
"windows": "Установка в качестве службы Windows",
"Docs": "Документация",
"Blog": "Блог",
"Help": "Помощь",
"GitHub": "GitHub",
"Team": "Команда",
"Donate": "Пожертвования",
"Introduction": "Введение",
"Configuration": "Конфигурация",
"Server": "Сервер",
"Plugins": "Плагины",
"DevOps": "DevOps",
"Development": "Разработка",
"Guides": "Руководства"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Узнайте больше, используя [документацию на этом сайте]. (/ docs/en/installation.html)",
"Browse Docs|no description given": "Просмотр документов",
"Ask questions about the documentation and project|no description given": "Задать вопросы о документации и проекте",
"Join the community|no description given": "Присоединиться к сообществу",
"Find out what's new with this project|no description given": "Узнайте, что нового в этом проекте",
"Stay up to date|no description given": "Оставайтесь в курсе",
"Need help?|no description given": "Нужна помощь?",
"This project is maintained by a dedicated group of people.|statement made to reader": "Этот проект поддерживается отдельной группой людей.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Узнайте больше о Verdaccio, используя [документацию на этом сайте]. (/ docs/en/installation.html)",
"You can follow and contact us on|no description given": "Вы можете следить и связаться с нами на",
"and also you can chat with the Verdaccio community at|no description given": "и так же вы можете общаться с сообществом Verdaccio в чате",
"If the documentation is not enough help, you can try browsing into our|no description given": "Если документация вам не помогла, вы можете попробовать заглянуть в наш",
"This project is maintained by the Verdaccio community.|no description given": "Этот проект поддерживается сообществом Verdaccio.",
"Get Started|no description given": "Начать работу",
"Contribute|no description given": "Содействовать",
"Thats it ! Enjoy your private package manager.|no description given": "Ну вот! Наслаждайтесь вашим менеджером приватных пакетов.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Множество отличных разработчиков уже присоединились к Verdaccio, Присоединяйтесь к сообществу!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** и **pnpm** являются частью любой разработки и мы стараемся угнаться за последними обновлениями.",
"The most popular npm clients are supported|no description given": "Поддерижваются наиболее популярные клиенты npm",
"We have an official **Docker** image ready to use|no description given": "У нас есть официальный **Docker** образ готовый к использованию",
"and **Kubernetes Helm** support for easy deployment|no description given": "и **Kubernetes Helm** поддерживается для простого развёртывания",
"Making the DevOps work easy|no description given": "Делает работу DevOps проще",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio основан на плагинах, аутентификации, middleware и поддержке хранилищ. Просто выберите нужный или создайте свой.",
"Plugin Support|no description given": "Поддержка Плагинов",
"Who's Using This?|no description given": "Кто это использует?",
"This project is used by all these people|no description given": "Этот проект используется всеми этими людьми",
"More|no description given": "Больше",
"Users|no description given": "Пользователи",
"This project is used by many folks|no description given": "Этот проект используется множеством людей",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Вы используете этот проект? Не стесняйся и добавь логитип проекта.",
"Add your company|no description given": "Добавить вашу компанию",
"Help Translate|recruit community translators for your project": "Помочь перевести",
"Edit this Doc|recruitment message asking to edit the doc source": "Редактировать",
"Translate this Doc|recruitment message asking to translate the docs": "Перевести"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "Ovaj fajl je auto-generisan zapisivanjem write-translations.js",
"localized-strings": {
"next": "Dalje",
"previous": "Natrag",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Autentifikacija",
"build": "Sagradi izvorni kod",
"chef": "Veliki Narodni Kuvar",
"ci": "Stalna Integracija",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Doprinos razvoju Verdaccio-a",
"dev-plugins": "Razvijanje Plugina",
"docker": "Docker",
"iss-server": "Instaliranje na IIS server",
"installation": "Instalacija",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotip",
"node-api": "Node API",
"notifications": "Obaveštenja",
"packages": "Package Access",
"plugins": "Plugini",
"protect-your-dependencies": "Zaštita paketa",
"puppet": "Puppet",
"source-code": "Izvorni kod",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Podešavanje SSL Sertifikata",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web korisnički interfejs2",
"what-is-verdaccio": "Šta je Verdaccio?",
"windows": "Instalirajte kao Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Pomoć",
"GitHub": "GitHub",
"Team": "Tim",
"Donate": "Donirajte",
"Introduction": "Uvod",
"Configuration": "Konfigurisanje",
"Server": "Server",
"Plugins": "Plugini",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Uputstva"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Naučite više čitajući [dokumentaciju na sajtu.](/docs/en/installation.html)",
"Browse Docs|no description given": "Pretraži Docs",
"Ask questions about the documentation and project|no description given": "Postavite pitanje vezano za dokumentaciju i projekat",
"Join the community|no description given": "Pridržite se zajednici",
"Find out what's new with this project|no description given": "Otkrijte novine u ovom projektu",
"Stay up to date|no description given": "Budite obavešteni",
"Need help?|no description given": "Potrebna Vam je pomoć?",
"This project is maintained by a dedicated group of people.|statement made to reader": "Ovaj projekat održava grupa posvećenih ljudi.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Naučite više o Verdaccio-u iz [dokumentacije dostupne na sajtu.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "Možete nas pratiti i kontaktirati na",
"and also you can chat with the Verdaccio community at|no description given": "ili možete ćaskati sa Verdaccio zajednicom na",
"If the documentation is not enough help, you can try browsing into our|no description given": "Ako dokumentacija nije dovoljna, probajte da potražite na našoj",
"This project is maintained by the Verdaccio community.|no description given": "Ovaj projekat održava Verdaccio zajednica.",
"Get Started|no description given": "Početak",
"Contribute|no description given": "Doprinesite",
"Thats it ! Enjoy your private package manager.|no description given": "To je to! Uživajte u svom private package manager-u.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Mnogo sjajnih developera već uživa koristeći Verdaccio, vreme je da se pridružite zajednici!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** i **pnpm** neizbežni u radu i stoga je dobro da pratite ažuriranja verzija.",
"The most popular npm clients are supported|no description given": "Najpopularniji npm klijenti su podržani",
"We have an official **Docker** image ready to use|no description given": "Imamo oficijelni **Docker** image spreman za upotrebu",
"and **Kubernetes Helm** support for easy deployment|no description given": "i **Kubernetes Helm** podršku za lak i jednostavan deployment",
"Making the DevOps work easy|no description given": "Neka DevOps rade sa lakoćom",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio je baziran na pluginima i podržava authentication, middleware i storage. Izaberite neki od postojećih plugina ili kreirajte svoj.",
"Plugin Support|no description given": "Podrška za Plugine",
"Who's Using This?|no description given": "Ko uopšte koristi ovo?",
"This project is used by all these people|no description given": "Svi ovi ljudi",
"More|no description given": "Više",
"Users|no description given": "Korisnici",
"This project is used by many folks|no description given": "Puno ljudi koristi ovaj projekat",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Da li i Vi koristite ovaj projekat? Ne budite stidljivi, dodajte logo svog projekta ili kompanije.",
"Add your company|no description given": "Dodajte svoju kompaniju",
"Help Translate|recruit community translators for your project": "Pomognite da se prevede",
"Edit this Doc|recruitment message asking to edit the doc source": "Uredi",
"Translate this Doc|recruitment message asking to translate the docs": "Prevedi"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Help",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,86 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "A lightweight private npm proxy registry",
"ansible": "Installing with Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Help": "Help",
"Blog": "Blog",
"GitHub": "GitHub",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"More Help?|no description given": "More Help?",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Easy to Install|no description given": "Easy to Install",
"Easy to Set Up|no description given": "Easy to Set Up",
"Easy to Use|no description given": "Easy to Use",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,86 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "اگلا",
"previous": "پچھلا",
"tagline": "ایک ہلکی نجی نپم پراکسی رجسٹری",
"ansible": "انسیبل کے ساتھ تنصیب کریں ۔",
"authentification": "اتھینتیکیشن",
"build": "سورس کوڈ کو بلڈ کریں ۔",
"ci": "Continuous Integration",
"cli": "کمانڈ لائن ٹول",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Help": "Help",
"Blog": "Blog",
"GitHub": "GitHub",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"More Help?|no description given": "More Help?",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Easy to Install|no description given": "Easy to Install",
"Easy to Set Up|no description given": "Easy to Set Up",
"Easy to Use|no description given": "Easy to Use",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "Verdaccio · A lightweight private npm proxy registry",
"ansible": "Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"chef": "Chef Cookbook",
"ci": "Continuous Integration",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"logo": "Verdaccio Logotype",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"puppet": "Puppet",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface2",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Blog": "Blog",
"Help": "Help",
"GitHub": "GitHub",
"Team": "Team",
"Donate": "Donate",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)",
"You can follow and contact us on|no description given": "You can follow and contact us on",
"and also you can chat with the Verdaccio community at|no description given": "and also you can chat with the Verdaccio community at",
"If the documentation is not enough help, you can try browsing into our|no description given": "If the documentation is not enough help, you can try browsing into our",
"This project is maintained by the Verdaccio community.|no description given": "This project is maintained by the Verdaccio community.",
"Get Started|no description given": "Get Started",
"Contribute|no description given": "Contribute",
"Thats it ! Enjoy your private package manager.|no description given": "Thats it ! Enjoy your private package manager.",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "Many great developers are already enjoying Verdaccio, join the community!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.",
"The most popular npm clients are supported|no description given": "The most popular npm clients are supported",
"We have an official **Docker** image ready to use|no description given": "We have an official **Docker** image ready to use",
"and **Kubernetes Helm** support for easy deployment|no description given": "and **Kubernetes Helm** support for easy deployment",
"Making the DevOps work easy|no description given": "Making the DevOps work easy",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.",
"Plugin Support|no description given": "Plugin Support",
"Who's Using This?|no description given": "Who's Using This?",
"This project is used by all these people|no description given": "This project is used by all these people",
"More|no description given": "More",
"Users|no description given": "Users",
"This project is used by many folks|no description given": "This project is used by many folks",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "Are you using this project? Do not be shy and add your company/project logo.",
"Add your company|no description given": "Add your company",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,88 +0,0 @@
{
"_comment": "此文件由 write-translations.js 自动生成",
"localized-strings": {
"next": "下一个",
"previous": "上一个",
"tagline": "Verdaccio · 一个轻量的私有npm proxy registry",
"ansible": "Ansible",
"authentification": "认证",
"build": "编译源代码",
"chef": "Chef Cookbook",
"ci": "持续集成",
"cli": "命令行工具",
"configuration": "配置文件",
"contributing": "参与贡献 Verdaccio",
"dev-plugins": "插件开发",
"docker": "Docker",
"iss-server": "在 IIS 上安装",
"installation": "安装",
"kubernetes": "Kubernetes",
"logger": "日志",
"logo": "Verdaccio 标识",
"node-api": "Node API",
"notifications": "通知",
"packages": "npm 包访问权限",
"plugins": "插件",
"protect-your-dependencies": "保护 npm 包",
"puppet": "Puppet",
"source-code": "源代码",
"reverse-proxy": "反向代理配置",
"server-configuration": "服务器配置",
"ssl": "设置 SSL 证书",
"unit-testing": "单元测试",
"uplinks": "Uplinks",
"use-cases": "使用场景",
"webui": "网页用户界面2",
"what-is-verdaccio": "什么是 Verdaccio",
"windows": "作为 Windows 服务安装",
"Docs": "文档",
"Blog": "博客",
"Help": "帮助",
"GitHub": "GitHub",
"Team": "团队",
"Donate": "捐赠",
"Introduction": "介绍",
"Configuration": "配置",
"Server": "服务器",
"Plugins": "插件",
"DevOps": "DevOps",
"Development": "开发",
"Guides": "使用指南"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "通过 [站内文档](/docs/en/installation.html) 了解更多信息",
"Browse Docs|no description given": "浏览文档",
"Ask questions about the documentation and project|no description given": "询问有关于文档或项目的问题",
"Join the community|no description given": "加入社区",
"Find out what's new with this project|no description given": "了解项目中新增的内容",
"Stay up to date|no description given": "保持最新版本",
"Need help?|no description given": "需要帮助?",
"This project is maintained by a dedicated group of people.|statement made to reader": "这个项目有专业的组织维护。",
"Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)|no description given": "通过 [站内文档](/docs/en/installation.html) 了解更多信息",
"You can follow and contact us on|no description given": "您可在这里以关注并联系我们",
"and also you can chat with the Verdaccio community at|no description given": "你也可以在这里与 Verdaccio 社区交流",
"If the documentation is not enough help, you can try browsing into our|no description given": "如果此文档无法帮忙,您可以试着浏览我们的",
"This project is maintained by the Verdaccio community.|no description given": "这个项目由 Verdaccio 社区维护。",
"Get Started|no description given": "开始",
"Contribute|no description given": "贡献",
"Thats it ! Enjoy your private package manager.|no description given": "就这么简单! 开始使用你的 私有 npm 仓库吧。",
"Many great developers are already enjoying Verdaccio, join the community!|no description given": "很多好的开发人员已经开始享受使用Verdaccio, 请加入社区!",
"**npm**, **yarn** and **pnpm** are part of any development workflow we try to catch up with the latest updates.|no description given": "**npm**, **yarn** 和**pnpm**是任何开发流程的一部分,我们试图在最新版本中赶上。",
"The most popular npm clients are supported|no description given": "支持所有主流的 npm 客户端",
"We have an official **Docker** image ready to use|no description given": "我们有官方的 **Docker** 镜像可供使用",
"and **Kubernetes Helm** support for easy deployment|no description given": "和 ** Kubernetes Helm** 支持, 便于部署",
"Making the DevOps work easy|no description given": "使 DevOps 工作轻松",
"Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.|no description given": "Verdaccio 是基于插件的,支持身份验证、中间件和存储插件。只需选择一个现有的即可使用或开发一个属于您自己的。",
"Plugin Support|no description given": "插件支持",
"Who's Using This?|no description given": "谁在用这个?",
"This project is used by all these people|no description given": "此项目被所有这些人使用",
"More|no description given": "更多",
"Users|no description given": "用户",
"This project is used by many folks|no description given": "这个项目已被许多人采用。",
"Are you using this project? Do not be shy and add your company/project logo.|no description given": "您是否正在使用此项目?不要害羞, 请添加您的公司/项目Logo到这里。",
"Add your company|no description given": "添加你的公司",
"Help Translate|recruit community translators for your project": "帮助翻译",
"Edit this Doc|recruitment message asking to edit the doc source": "编辑",
"Translate this Doc|recruitment message asking to translate the docs": "翻译"
}
}

View File

@ -1,59 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "A lightweight private npm proxy registry",
"ansible": "Installing with Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"home": "Verdaccio npm proxy private registry",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Help": "Help",
"Blog": "Blog",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,59 +0,0 @@
{
"_comment": "This file is auto-generated by write-translations.js",
"localized-strings": {
"next": "Next",
"previous": "Previous",
"tagline": "A lightweight private npm proxy registry",
"ansible": "Installing with Ansible",
"authentification": "Authentification",
"build": "Build the source code",
"cli": "Command Line Tool",
"configuration": "Configuration File",
"contributing": "Contributing Verdaccio",
"dev-plugins": "Developing Plugins",
"docker": "Docker",
"home": "Verdaccio npm proxy private registry",
"iss-server": "Installing on IIS server",
"installation": "Installation",
"kubernetes": "Kubernetes",
"logger": "Logger",
"node-api": "Node API",
"notifications": "Notifications",
"packages": "Package Access",
"plugins": "Plugins",
"protect-your-dependencies": "Protecting packages",
"source-code": "Source Code",
"reverse-proxy": "Reverse Proxy Setup",
"server-configuration": "Server Configuration",
"ssl": "Set up the SSL Certificates",
"unit-testing": "Unit Testing",
"uplinks": "Uplinks",
"use-cases": "Use Cases",
"webui": "Web User Interface",
"what-is-verdaccio": "What is Verdaccio?",
"windows": "Installing As a Windows Service",
"Docs": "Docs",
"Help": "Help",
"Blog": "Blog",
"Introduction": "Introduction",
"Configuration": "Configuration",
"Server": "Server",
"Plugins": "Plugins",
"DevOps": "DevOps",
"Development": "Development",
"Guides": "Guides"
},
"pages-strings": {
"Learn more using the [documentation on this site.](/docs/en/installation.html)|no description given": "Learn more using the [documentation on this site.](/docs/en/installation.html)",
"Browse Docs|no description given": "Browse Docs",
"Ask questions about the documentation and project|no description given": "Ask questions about the documentation and project",
"Join the community|no description given": "Join the community",
"Find out what's new with this project|no description given": "Find out what's new with this project",
"Stay up to date|no description given": "Stay up to date",
"Need help?|no description given": "Need help?",
"This project is maintained by a dedicated group of people.|statement made to reader": "This project is maintained by a dedicated group of people.",
"Help Translate|recruit community translators for your project": "Help Translate",
"Edit this Doc|recruitment message asking to edit the doc source": "Edit",
"Translate this Doc|recruitment message asking to translate the docs": "Translate"
}
}

View File

@ -1,186 +0,0 @@
/**
* Copyright (c) 2017-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
const languages = [
{
enabled: true,
name: 'English',
tag: 'en',
},
{
enabled: false,
name: '日本語',
tag: 'ja',
},
{
enabled: false,
name: 'العربية',
tag: 'ar',
},
{
enabled: false,
name: 'Bosanski',
tag: 'bs-BA',
},
{
enabled: false,
name: 'Català',
tag: 'ca',
},
{
enabled: false,
name: 'Čeština',
tag: 'cs',
},
{
enabled: false,
name: 'Dansk',
tag: 'da',
},
{
enabled: false,
name: 'Deutsch',
tag: 'de',
},
{
enabled: false,
name: 'Ελληνικά',
tag: 'el',
},
{
enabled: true,
name: 'Español',
tag: 'es-ES',
},
{
enabled: false,
name: 'فارسی',
tag: 'fa-IR',
},
{
enabled: false,
name: 'Suomi',
tag: 'fi',
},
{
enabled: true,
name: 'Français',
tag: 'fr-FR',
},
{
enabled: false,
name: 'עִברִית',
tag: 'he',
},
{
enabled: false,
name: 'Magyar',
tag: 'hu',
},
{
enabled: false,
name: 'Bahasa Indonesia',
tag: 'id-ID',
},
{
enabled: true,
name: 'Italiano',
tag: 'it-IT',
},
{
enabled: false,
name: 'Afrikaans',
tag: 'af',
},
{
enabled: false,
name: '한국어',
tag: 'ko',
},
{
enabled: false,
name: 'मराठी',
tag: 'mr-IN',
},
{
enabled: false,
name: 'Nederlands',
tag: 'nl',
},
{
enabled: false,
name: 'Norsk',
tag: 'no-NO',
},
{
enabled: false,
name: 'Polskie',
tag: 'pl-PL',
},
{
enabled: false,
name: 'Português',
tag: 'pt-PT',
},
{
enabled: false,
name: 'Português (Brasil)',
tag: 'pt-BR',
},
{
enabled: false,
name: 'Română',
tag: 'ro',
},
{
enabled: false,
name: 'Русский',
tag: 'ru-RU',
},
{
enabled: false,
name: 'Slovenský',
tag: 'sk-SK',
},
{
enabled: false,
name: 'Српски језик (Ћирилица)',
tag: 'sr-SP',
},
{
enabled: false,
name: 'Serbian',
tag: 'sr-CS',
},
{
enabled: false,
name: 'Svenska',
tag: 'sv-SE',
},
{
enabled: false,
name: 'Türkçe',
tag: 'tr',
},
{
enabled: false,
name: 'Українська',
tag: 'uk',
},
{
enabled: false,
name: 'Tiếng Việt',
tag: 'vi-VN',
},
{
enabled: true,
name: '中文',
tag: 'zh-CN',
},
{enabled: false, name: '繁體中文', tag: 'zh-TW'},
];
module.exports = languages;

View File

@ -1,17 +0,0 @@
{
"version": "3.3.0",
"scripts": {
"examples": "docusaurus-examples",
"start": "docusaurus-start",
"build": "docusaurus-build",
"version": "docusaurus-version",
"publish-gh-pages": "docusaurus-publish",
"write-translations": "docusaurus-write-translations",
"rename-version": "docusaurus-rename-version"
},
"license": "MIT",
"devDependencies": {
"docusaurus": "1.3.2",
"js-yaml": "^3.12.0"
}
}

View File

@ -1,70 +0,0 @@
/**
* Copyright (c) 2017-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
const React = require('react');
const CompLibrary = require('../../core/CompLibrary.js');
const Container = CompLibrary.Container;
const GridBlock = CompLibrary.GridBlock;
const translate = require('../../server/translate.js').translate;
const siteConfig = require(process.cwd() + '/siteConfig.js');
class Help extends React.Component {
render() {
const supportLinks = [
{
content: (
<translate>
Learn more using the [documentation on this
site.](/docs/en/installation.html)
</translate>
),
title: <translate>Browse Docs</translate>,
},
{
content: (
<translate>
Ask questions about the documentation and project
</translate>
),
title: <translate>Join the community</translate>,
},
{
content: <translate>Find out what's new with this project</translate>,
title: <translate>Stay up to date</translate>,
},
];
return (
<div className="docMainWrapper wrapper">
<Container className="mainContainer documentContainer postContainer">
<div className="post">
<header className="postHeader">
<h2>
<translate>Need help?</translate>
</h2>
</header>
<p>
<translate desc="statement made to reader">
This project is maintained by a dedicated group of people.
</translate>
</p>
<GridBlock contents={supportLinks} layout="threeColumn" />
</div>
</Container>
</div>
);
}
}
Help.defaultProps = {
language: 'en',
};
module.exports = Help;

View File

@ -1,64 +0,0 @@
/**
* Copyright (c) 2017-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
const React = require('react');
const translate = require("../../server/translate.js").translate;
const CompLibrary = require('../../core/CompLibrary.js');
const Container = CompLibrary.Container;
const GridBlock = CompLibrary.GridBlock;
const siteConfig = require(process.cwd() + '/siteConfig.js');
class Help extends React.Component {
render() {
const supportLinks = [
{
content:
<translate>Learn more about Verdaccio using the [documentation on this site.](/docs/en/installation.html)</translate>,
title: <translate>Browse Docs</translate>,
},
{
content: <translate>You can follow and contact us on</translate> + ' [Twitter](https://twitter.com/verdaccio_npm).',
title: 'Twitter',
},
{
content: <translate>and also you can chat with the Verdaccio community at</translate> + ' [Discord](https://discord.gg/7qWJxBf).',
title: 'Discord',
},
{
content: <translate>If the documentation is not enough help, you can try browsing into our</translate> +
" [Question Database](https://github.com/verdaccio/verdaccio/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3Aquestion+) ",
title: 'GitHub',
},
];
return (
<div className="docMainWrapper wrapper">
<Container className="mainContainer documentContainer postContainer">
<div className="post">
<header className="postHeader">
<h2>
<translate>
Need help?
</translate>
</h2>
</header>
<p>
<translate>
This project is maintained by the Verdaccio community.
</translate>
</p>
<GridBlock contents={supportLinks} layout="fourColumn" />
</div>
</Container>
</div>
);
}
}
module.exports = Help;

View File

@ -1,292 +0,0 @@
const React = require('react');
const CompLibrary = require('../../core/CompLibrary.js');
const translate = require("../../server/translate.js").translate;
const translation = require('../../server/translation.js');
const Container = CompLibrary.Container;
const GridBlock = CompLibrary.GridBlock;
const siteConfig = require(process.cwd() + '/siteConfig.js');
class TweetsSection extends React.Component {
render() {
return(
<div className="tweets-section">
<div>
{this.renderTweetUpRight()}
</div>
<div>
{this.renderTweetUpLeft()}
</div>
<div>
{this.renderTweetDownRight()}
</div>
<div>
{this.renderTweetDownLeft()}
</div>
</div>);
}
renderTweetUpRight() {
return (<blockquote className="twitter-tweet" data-cards="hidden" data-lang="es"><p lang="en" dir="ltr">In a world
where <a href="https://twitter.com/npmjs?ref_src=twsrc%5Etfw">@npmjs</a> and other core infrastructure fully
embraced the &quot;move fast and break things&quot; mindset, it&#39;s great to see other people care deeply about
stability. <a href="https://t.co/uVk7xFeiwU">https://t.co/uVk7xFeiwU</a> &quot;just works&quot; and has saved us
countless headaches. Thanks <a href="https://twitter.com/verdaccio_npm?ref_src=twsrc%5Etfw">@verdaccio_npm</a> !
</p>&mdash; Sheet JS (@SheetJS) <a
href="https://twitter.com/SheetJS/status/1002609907370250241?ref_src=twsrc%5Etfw">1 de junio de 2018</a>
</blockquote>);
}
renderTweetUpLeft() {
return (
<blockquote className="twitter-tweet" data-lang="es"><p lang="en" dir="ltr">Woke up to <a
href="https://twitter.com/timer150?ref_src=twsrc%5Etfw">@timer150</a> fixing end-to-end test flakiness in Create
React App 👏 Background: we have a Lerna monorepo and used very complex hacks for integration testing of
generated projects. Solution: run a local npm registry to simulate a publish 😁 <a
href="https://t.co/ggNfS4PpFv">https://t.co/ggNfS4PpFv</a></p>&mdash; Dan Abramov (@dan_abramov) <a
href="https://twitter.com/dan_abramov/status/951427300070916096?ref_src=twsrc%5Etfw">11 de enero de 2018</a>
</blockquote>);
}
renderTweetDownRight() {
return (
<blockquote className="twitter-tweet" data-lang="es"><p lang="en" dir="ltr">Verdaccio is my personal hero. A
lightweight npm registry &amp; cache. Just two commands to install + use it. <a
href="https://twitter.com/hashtag/incredibile?src=hash&amp;ref_src=twsrc%5Etfw">#incredibile</a> <a
href="https://t.co/X0uNgS6UMz">https://t.co/X0uNgS6UMz</a></p>&mdash; Manfred Steyer (@ManfredSteyer) <a
href="https://twitter.com/ManfredSteyer/status/1002153128140136448?ref_src=twsrc%5Etfw">31 de mayo de 2018</a>
</blockquote>)
}
renderTweetDownLeft() {
return (
<blockquote className="twitter-tweet" data-conversation="none" data-cards="hidden" data-lang="es">
<p lang="en" dir="ltr">
<a href="https://twitter.com/verdaccio_npm?ref_src=twsrc%5Etfw">@verdaccio_npm</a> is a pretty good open-source
tool and seems to be growing. We&#39;re currently using them at NodeSource for some internal caching and
modules, and are happy so far. Easy to setup for both business and use.<br/><br/>🔗
<a href="https://t.co/ow5JRgZYrU">https://t.co/ow5JRgZYrU</a>
</p>&mdash; Tierney Cyren (@bitandbang) <a
href="https://twitter.com/bitandbang/status/1001297542779424768?ref_src=twsrc%5Etfw">29 de mayo de 2018</a>
</blockquote>);
}
}
class Button extends React.Component {
render() {
return (
<div className="pluginWrapper buttonWrapper">
<a className="button" href={this.props.href} target={this.props.target}>
{this.props.children}
</a>
</div>
);
}
}
Button.defaultProps = {
target: '_self',
};
class HeaderButtons extends React.Component {
buildUrl(relativePath) {
return `${siteConfig.baseUrl}docs/${this.props.language}${relativePath}`;
}
render() {
return (
<div className="pluginRowBlock">
<Button href={this.buildUrl('/what-is-verdaccio.html')}>
<translate>
Get Started
</translate>
</Button>
<Button href="https://github.com/verdaccio">
Github
</Button>
<Button href={this.buildUrl('/contributing.html')}>
<translate>
Contribute
</translate>
</Button>
</div>
)
}
}
class HomeSplash extends React.Component {
render() {
return (
<div className="homeContainer">
<div className="homeSplashFade">
<div className="wrapper homeWrapper">
<div className="inner">
<h1 className="projectTitle">
<img title={siteConfig.title} alt={siteConfig.title} src={siteConfig.baseUrl + 'img/logo/banner/png/verdaccio-banner@2x.png'} />
<small>
{
translation[this.props.language]['localized-strings'].tagline
}
</small>
</h1>
<div className="section promoSection">
<div className="promoRow">
<HeaderButtons language={this.props.language}/>
</div>
</div>
<iframe
src={"https://ghbtns.com/github-btn.html?user=verdaccio&repo=verdaccio&type=star&count=true&size=large"}
frameBorder="0"
scrolling="0"
width="160px"
height="30px"
style={{marginTop: '8px'}}
/>
</div>
</div>
</div>
</div>
);
}
}
const FeatureSection = () => (
<GridBlock
className="feature-section"
align="center"
contents={[
{
content: '```bash\n' + 'npm install --global verdaccio'
}
]}
layout="twoColumn"
/>
);
const MiddleTitle = (props) => {
return (
<div className="productShowcaseSection paddingBottom"
style={{textAlign: 'center'}}>
<h2>
{props.children}
</h2>
</div>
);
}
class Index extends React.Component {
render() {
let language = this.props.language || 'en';
const showcase = siteConfig.users
.filter(user => {
return user.pinned;
})
.map((user, i) => {
return (
<a href={user.infoLink} key={i} target="_blank" rel="noopener">
<img src={user.image} alt={user.caption} title={user.caption} />
</a>
);
});
return (
<div>
<HomeSplash language={language} />
<div className="mainContainer">
<Container padding={['top']}>
<FeatureSection/>
</Container>
<MiddleTitle>
<translate>
Thats it ! Enjoy your private package manager.
</translate>
</MiddleTitle>
<Container>
<TweetsSection/>
</Container>
<MiddleTitle>
<translate>
Many great developers are already enjoying Verdaccio, join the community!
</translate>
</MiddleTitle>
<Container padding={['bottom', 'top']} background="light">
<GridBlock
contents={[
{
content: <translate>**npm**, **yarn** and **pnpm** are part of any development workflow
we try to catch up with the latest updates.</translate>,
image: siteConfig.baseUrl + 'img/package_managers_grey.png',
imageAlt: 'The most popular npm clients are supported',
imageAlign: 'right',
title: <translate>The most popular npm clients are supported</translate>,
},
]}
/>
</Container>
<Container padding={['bottom', 'top']} id="try">
<GridBlock
contents={[
{
content: <translate>We have an official **Docker** image ready to use</translate> + '&#8232;\n' +
'```bash\n' +
'docker pull verdaccio/verdaccio\n' +
'```' +
'\n' + <translate>and **Kubernetes Helm** support for easy deployment</translate> + '\n '+
'```bash\n' +
'helm install --name npm stable/verdaccio\n' +
'```\n',
image: siteConfig.baseUrl + 'img/devops_support_grey.png',
imageAlign: 'left',
title: <translate>Making the DevOps work easy</translate>,
},
]}
/>
</Container>
<Container padding={['bottom', 'top']} background="dark">
<GridBlock
contents={[
{
content:
<translate>Verdaccio is plugin based, authentication, middleware and storage support. Just pick one or create your custom one.</translate>,
image: siteConfig.baseUrl + 'img/logo/symbol/png/verdaccio-tiny@3x.png',
imageAlign: 'right',
title: <translate>Plugin Support</translate>,
},
]}
/>
</Container>
<div className="productShowcaseSection paddingBottom">
<h2>
<translate>
Who's Using This?
</translate>
</h2>
<p>
<translate>
This project is used by all these people
</translate>
</p>
<div className="logos">{showcase}</div>
<div className="more-users">
<a
className="button"
href={
siteConfig.baseUrl + this.props.language + '/' + 'users.html'
}>
<translate>More</translate> {siteConfig.title} <translate>Users</translate>
</a>
</div>
</div>
</div>
</div>
);
}
}
module.exports = Index;

View File

@ -1,178 +0,0 @@
const React = require('react');
const CompLibrary = require('../../core/CompLibrary.js');
const Container = CompLibrary.Container;
const siteConfig = require(process.cwd() + '/siteConfig.js');
const NetworkLink = props => {
if (props.text) {
return (
<div>
<img
style={{ marginRight: 4 }}
height={props.size}
width={props.size}
src={props.iconSource}
alt={props.iconAlt}
/>
<a href={props.url} target="_blank" rel="noreferrer noopener">
<span className="anchor_text">{props.text}</span>
</a>
</div>
);
} else return null;
};
const Member = ({ member, imageSize }) => {
const { github, twitter, name, crowdin, role, active } = member;
const avatarUrl = `https://avatars.githubusercontent.com/${github}`;
const twitterUrl = `https://twitter.com/${twitter}`;
const githubUrl = `https://github.com/${github}`;
const crowdinUrl = `https://crowdin.com/profile/${crowdin}`;
const size = imageSize || 100;
// to disable an member it has to be strictly false
if (!active && active === false) {
return null;
}
return (
<div className="member_media_object">
<div>
<h5>
<div>
{name}
</div>
<div className="team_role">
{role ? `${role}` : ''}
</div>
</h5>
</div>
<div className="member_avatar">
<img src={avatarUrl} height={size} width={size} alt="{{name}}" />
</div>
<div className="member_info">
<NetworkLink
iconAlt="github"
iconSource={`/svg/social/github.svg`}
size="16"
url={githubUrl}
text={github}
/>
<NetworkLink
iconAlt="twitter"
iconSource="/svg/social//twitter.svg"
size="16"
url={twitterUrl}
text={twitter}
/>
<NetworkLink
iconAlt="crowdin"
iconSource="/svg/social/crowdin.ico"
size="16"
url={crowdinUrl}
text={crowdin}
/>
</div>
</div>
);
};
const MemberSection = props => {
return (
<div className="member_section">
<h2 className="member_title">{props.title}</h2>
<div className="member_group">
{props.members.map(member => {
return <Member
key={member.github}
member={member}
imageSize={props.imageSize} />;
})}
</div>
</div>
);
};
const TranslatorMemberSections = props => {
return (
<div className="member_section">
<h4 className="language_title">{props.title}</h4>
<div>
<div>
<div className="member_group">
{props.translator.map(member => {
return <Member
key={member.crowdin}
member={member}
imageSize={60} />;
})}
</div>
</div>
</div>
</div>
);
};
const LanguagesGroups = props => {
const languages = Object.keys(props.languages);
return (
<div>
<h3 className="member_type translator_type">{props.title}</h3>
<div className="translator_group">
{languages.map((function(language) {
const lang = props.languages[language];
return <TranslatorMemberSections
key={language}
title={language}
translator={lang}/>;
}))}
</div>
</div>
);
};
const CrowdinTranslators = props => {
return (
<div className="translation_section">
<h2>
Crowdin Translators
</h2>
<div>
<LanguagesGroups languages={props.translators}/>
</div>
</div>
);
};
const BannerTitle = (props) => {
return (
<h1 className="header_title">
{props.title}
</h1>
);
};
class Team extends React.Component {
render() {
const {admons, maintainers, translators} = siteConfig.team;
return (
<div className="mainContainer">
<Container padding={['bottom']}>
<BannerTitle title={"Team Members"}/>
<div class="team_container">
<MemberSection title="Core" members={admons} imageSize={100}/>
<MemberSection title="Maintainers" members={maintainers} imageSize={80}/>
<CrowdinTranslators translators={translators} />
</div>
</Container>
</div>
);
}
}
module.exports = Team;

View File

@ -1,54 +0,0 @@
const React = require('react');
const CompLibrary = require('../../core/CompLibrary.js');
const Container = CompLibrary.Container;
const translate = require("../../server/translate.js").translate;
const siteConfig = require(process.cwd() + '/siteConfig.js');
class Users extends React.Component {
render() {
const showcase = siteConfig.users.map((user, i) => {
return (
<a href={user.infoLink} key={i} target="_blank" rel="noopener">
<img src={user.image} alt={user.caption} title={user.caption} />
</a>
);
});
return (
<div className="mainContainer">
<Container padding={['bottom', 'top']}>
<div className="showcaseSection">
<div className="prose">
<h1>
<translate>
Who's Using This?
</translate>
</h1>
<p>
<translate>
This project is used by many folks
</translate>
</p>
</div>
<div className="logos">{showcase}</div>
<p>
<translate>
Are you using this project? Do not be shy and add your company/project logo.
</translate>
</p>
<a
href="https://github.com/verdaccio/verdaccio/edit/master/website/siteConfig.js"
className="button">
<translate>
Add your company
</translate>
</a>
</div>
</Container>
</div>
);
}
}
module.exports = Users;

View File

@ -1,46 +0,0 @@
{
"docs": {
"Introduction": [
"what-is-verdaccio",
"installation",
"cli",
"logo"
],
"Configuration": [
"configuration",
"uplinks",
"packages",
"authentification",
"notifications",
"logger",
"webui"
],
"Server": [
"server-configuration",
"reverse-proxy",
"ssl",
"windows",
"iss-server"
],
"Plugins": [
"plugins",
"dev-plugins"
],
"DevOps": [
"docker",
"kubernetes",
"ansible",
"puppet",
"chef",
"ci"
],
"Development": [
"build",
"contributing",
"source-code",
"unit-testing",
"node-api"
],
"Guides": ["protect-your-dependencies"]
}
}

View File

@ -1,115 +0,0 @@
const {loadYaml} = require('./utils');
const team = loadYaml("./data/team.yml");
const users = [
{
caption: "Filiosoft",
image: "/img/users/filiosoft.png",
infoLink: "https://filiosoft.com/",
fbOpenSource: false,
pinned: false,
},
{
caption: "SheetJS",
image: "/img/users/sheetjs.png",
infoLink: "https://sheetjs.com/",
fbOpenSource: false,
pinned: true,
},
{
caption: "Mozilla Neutrino",
image: "/img/users/neutrino.png",
infoLink: "https://neutrinojs.org/",
fbOpenSource: false,
pinned: true,
},
{
caption: "pnpm",
image: "/img/users/pnpm.svg",
infoLink: "https://pnpm.js.org/",
fbOpenSource: false,
pinned: true,
},
{
caption: "nodesource",
image: "/img/users/nodesource.jpg",
infoLink: "https://nodesource.com/",
fbOpenSource: false,
pinned: true,
},
{
caption: "Strapi",
image: "/img/users/strapijs.jpg",
infoLink: "https://strapi.io/",
fbOpenSource: false,
pinned: true,
},
{
caption: "Innovaccer",
image: "/img/users/innovaccer.png",
infoLink: "http://innovaccer.com/",
fbOpenSource: false,
pinned: true,
},
];
const siteConfig = {
title: 'Verdaccio' /* title for your website */,
tagline: 'A lightweight private npm proxy registry',
url: 'https://verdaccio.org' /* your website url */,
organizationName: 'verdaccio',
cname: 'verdaccio.org',
noIndex: false,
baseUrl: '/' /* base url for your project */,
projectName: 'verdaccio',
headerLinks: [
{ doc: 'installation', label: 'Docs'},
{ href: "https://medium.com/verdaccio", label: 'Blog'},
{ page: 'help', label: 'Help'},
{ href: "https://github.com/verdaccio", label: "GitHub" },
{ search: true },
{ page: 'team', label: 'Team'},
{ href: "https://opencollective.com/verdaccio", label: "Donate" },
],
users,
team,
headerIcon: 'img/logo/symbol/svg/verdaccio-tiny.svg',
footerIcon: 'img/logo/symbol/svg/verdaccio-blackwhite.svg',
favicon: 'img/favicon/favicon.ico',
colors: {
primaryColor: '#4B5E40',
secondaryColor: '#205C3B',
},
translationRecruitingLink: 'https://crowdin.com/project/verdaccio',
copyright:
'Copyright © ' + new Date().getFullYear() + ' Verdaccio community',
// organizationName: 'deltice', // or set an env variable ORGANIZATION_NAME
// projectName: 'test-site', // or set an env variable PROJECT_NAME
usePrism: ['jsx'],
highlight: {
theme: 'atom-one-dark',
},
algolia: {
apiKey: 'a8b4d117e513cd8d71d6a95e3d9d4a91',
indexName: 'verdaccio'
},
gaTrackingId: 'UA-2527438-21',
twitter: true,
scripts: [
'https://buttons.github.io/buttons.js',
'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js',
'/js/code-blocks-buttons.js',
],
stylesheets: [
'/css/code-blocks-buttons.css',
],
repoUrl: 'https://github.com/verdaccio/verdaccio',
cleanUrl: true,
scrollToTop: true,
scrollToTopOptions: {
zIndex: 100,
},
};
module.exports = siteConfig;

View File

@ -1,39 +0,0 @@
/* "Copy" code block button */
pre {
position: relative;
}
pre .btnIcon {
position: absolute;
top: 4px;
z-index: 2;
cursor: pointer;
border: 1px solid transparent;
padding: 0;
color: #fff;
background-color: transparent;
height: 30px;
transition: all .25s ease-out;
}
pre .btnIcon:hover {
text-decoration: none;
}
.btnIcon__body {
align-items: center;
display: flex;
}
.btnIcon svg {
fill: currentColor;
margin-right: .4em;
}
.btnIcon__label {
font-size: 11px;
}
.btnClipboard {
right: 10px;
}

View File

@ -1,129 +0,0 @@
.mainContainer .wrapper a,
.inner .projectIntro a {
color: #1a1a1a;
transition: all 0.25s ease-out;
text-decoration: none;
}
.mainContainer .wrapper a:hover,
.inner .projectIntro a:hover {
text-decoration: underline;
}
.feature-section .blockContent {
max-width: 600px;
margin: 0 auto;
}
.header_title {
margin-top: 0;
}
.docker-count img {
margin-left: initial;
}
.tweets-section {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
}
.tweets-section > div {
padding: 20px;
flex: 2;
box-sizing:border-box;
text-align: center;
margin: 0 auto;
}
.tweets-section > div .twitter-tweet {
margin: 0 auto !important;
}
/** team **/
.team_container a,
.team_container a:hover {
font-size: 80%;
text-decoration: none;
}
.member_group {
display: flex;
flex-wrap: wrap;
}
.member_media_object {
width: 15%;
box-sizing: border-box;
text-align: center;
}
.member_media_object .team_role {
font-size: 80%;
}
@media (min-width: 1281px) {
.member_media_object {
width: 15%
}
}
@media (min-width: 1025px) and (max-width:1280px) {
.member_media_object {
width: 33.3%
}
}
@media (min-width: 768px) and (max-width:1024px) {
.member_media_object {
width: 50%
}
}
@media (min-width: 768px) and (max-width:1024px) and (orientation:landscape) {
.member_media_object {
width: 50%
}
}
@media (min-width: 481px) and (max-width:767px) {
.member_media_object {
width: 100%
}
}
@media (min-width: 320px) and (max-width:480px) {
.member_media_object {
width: 100%
}
}
.member_section {
width: 100%;
}
.member_section .language_title {
text-transform: capitalize;
margin-bottom: 5px;
margin-top: 10px;
}
.member_info {
line-height: 1.7;
}
.member_info > div {
display: flex;
align-items: center;
justify-content: center;
}
.member_avatar > img {
border-radius: 50px;
border: 1px solid #4b5e40;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

View File

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="301px" height="100px" viewBox="0 0 301 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>verdaccio-banner</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="verdaccio-banner" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="verdaccio-logo-Full">
<rect id="BG" fill="#F7F8F6" fill-rule="nonzero" x="0" y="0" width="301" height="100" rx="37"></rect>
<g id="Group-2" transform="translate(27.000000, 22.000000)">
<g id="Group-2-Copy" transform="translate(81.200000, 0.400000)" fill="#405236" font-family="OpenSansLight-Italic, Open Sans" font-size="42.4" font-style="italic" font-weight="300">
<g id="Verdaccio">
<text>
<tspan x="0" y="45">Verdaccio</tspan>
</text>
</g>
</g>
<g id="Group" transform="translate(0.000000, 5.500000)">
<g id="Combined-Shape">
<g id="path-1-link" fill="#000000" fill-rule="nonzero">
<polygon id="path-1" points="48 17.6 32.8 48 24 48 0.4 0.8 15.6 0.8 28.4 26.4 32.8 17.6"></polygon>
</g>
<g id="path-1-link" fill="#405236">
<polygon id="path-1" points="48 17.6 32.8 48 24 48 0.4 0.8 15.6 0.8 28.4 26.4 32.8 17.6"></polygon>
</g>
<polygon id="Shape" stroke="#405236" stroke-width="2.4" points="46.0583592 18.8 33.5416408 18.8 28.4 29.0832816 14.8583592 2 2.34164079 2 24.7416408 46.8 32.0583592 46.8"></polygon>
</g>
<g id="Path" transform="translate(35.000000, 0.000000)">
<g id="path-3-link" fill="#000000" fill-rule="nonzero">
<polygon id="path-3" points="15.8 12 0.6 12 6.2 0.8 21.4 0.8"></polygon>
</g>
<g id="path-3-link" fill="#CD4000">
<polygon id="path-3" points="15.8 12 0.6 12 6.2 0.8 21.4 0.8"></polygon>
</g>
<polygon id="Shape" stroke="#CD4000" stroke-width="2.4" points="15.0583592 10.8 19.4583592 2 6.9416408 2 2.5416408 10.8"></polygon>
</g>
<g id="Combined-Shape">
<g id="path-5-link" fill="#4A5E3F">
<polygon id="path-5" points="32.8 48 24 48 0.4 0.8 15.6 0.8 35.9772662 41.6908081"></polygon>
</g>
<polygon id="Shape" stroke="#405236" stroke-width="2.4" points="32.0607372 46.8 34.6351125 41.6879866 14.8572527 2 2.34164079 2 24.7416408 46.8"></polygon>
</g>
<path d="M37.6,2 L52.8210381,2" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M33.6,6 L48.8210381,6" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M29.6,10.8 L44.8210381,10.8" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -1,48 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>logo-small-header-bottom</title>
<desc>Created with Sketch.</desc>
<defs>
<polygon id="path-1" points="48 17.6 32.8 48 24 48 0.4 0.8 15.6 0.8 28.4 26.4 32.8 17.6 48 17.6"></polygon>
<filter x="-20.0%" y="-11.7%" width="139.9%" height="140.3%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<polygon id="path-3" points="50.8 12 35.6 12 41.2 0.8 56.4 0.8 50.8 12"></polygon>
<filter x="-45.7%" y="-49.1%" width="191.3%" height="269.6%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="logo-small-header-bottom">
<g>
<path d="M37,0 L63,0 C83.421,0 100,16.579 100,37 L100,63 C100,83.421 83.421,100 63,100 L37,100 C16.579,100 0,83.421 0,63 L0,37 C0,16.579 16.579,0 37,0 Z" id="Shape" fill="#F7F8F6"></path>
<g id="Textmarke" transform="translate(28.400000, 77.000000)" fill="#405236" font-family="OpenSansLight-Italic, Open Sans" font-size="10" font-style="italic" font-weight="300">
<text id="Verdaccio">
<tspan x="0.497" y="11.379">Verdaccio</tspan>
</text>
</g>
<g id="Bildmarke" transform="translate(22.000000, 26.000000)">
<g id="Combined-Shape">
<use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
<path stroke="#405236" stroke-width="2.4" d="M46.0583592,18.8 L33.5416408,18.8 L28.4,29.0832816 L14.8583592,2 L2.34164079,2 L24.7416408,46.8 L32.0583592,46.8 L46.0583592,18.8 Z" stroke-linejoin="square" fill="#405236" fill-rule="evenodd"></path>
</g>
<g id="Path">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
<path stroke="#CD4000" stroke-width="2.4" d="M50.0583592,10.8 L54.4583592,2 L41.9416408,2 L37.5416408,10.8 L50.0583592,10.8 Z" stroke-linejoin="square" fill="#CD4000" fill-rule="evenodd"></path>
</g>
<path d="M32.0607372,46.8 L34.6351125,41.6879866 L14.8572527,2 L2.34164079,2 L24.7416408,46.8 L32.0607372,46.8 Z" id="Combined-Shape" stroke="#405236" stroke-width="2.4" fill="#4A5E3F"></path>
<path d="M37.6,2 L52.8210381,2" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M33.6,6 L48.8210381,6" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M29.6,10.8 L44.8210381,10.8" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -1,37 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>verdaccio-blackwhite</title>
<desc>Created with Sketch.</desc>
<defs>
<polygon id="path-1" points="48 16.7288136 32.6722689 47 23.7983193 47 0 0 15.3277311 5.66025569e-15 28.2352941 25.4915254 32.6722689 16.7288136 48 16.7288136"></polygon>
<filter x="-19.8%" y="-11.7%" width="139.6%" height="140.4%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<path d="M35.2,11 L28,11 L28,8.64285714 L36.4,8.64285714 L37.6,6.28571429 L32,6.28571429 L32,3.92857143 L38.8,3.92857143 L39.6,2.35714286 L36,2.35714286 L36,0 L40.8,0 L56,0 L50.4,11 L35.2,11 Z" id="path-3"></path>
<filter x="-33.9%" y="-50.0%" width="167.9%" height="272.7%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="verdaccio-blackwhite">
<rect id="BG" fill="#000000" x="0" y="0" width="100" height="100" rx="37"></rect>
<g id="Group" transform="translate(22.000000, 30.000000)">
<g id="Combined-Shape">
<use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
<use fill-opacity="0.6" fill="#FFFFFF" fill-rule="evenodd" xlink:href="#path-1"></use>
</g>
<g id="Combined-Shape">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
<use fill="#FFFFFF" fill-rule="evenodd" xlink:href="#path-3"></use>
</g>
<polygon id="Combined-Shape" fill="#FFFFFF" points="32.7849811 47 23.8804183 47 0 0 15.3806084 0 36 40.7175419"></polygon>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

View File

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="100px" height="100px" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>verdaccio-tiny</title>
<desc>Created with Sketch.</desc>
<defs>
<polygon id="path-1" points="48 17.6 32.8 48 24 48 0.4 0.8 15.6 0.8 28.4 26.4 32.8 17.6 48 17.6"></polygon>
<filter x="-20.0%" y="-11.7%" width="139.9%" height="140.3%" filterUnits="objectBoundingBox" id="filter-2">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
<polygon id="path-3" points="50.8 12 35.6 12 41.2 0.8 56.4 0.8 50.8 12"></polygon>
<filter x="-45.7%" y="-49.1%" width="191.3%" height="269.6%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="4" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feComposite in="shadowBlurOuter1" in2="SourceAlpha" operator="out" result="shadowBlurOuter1"></feComposite>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0906646286 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="verdaccio-tiny">
<rect id="BG" fill="#F7F8F6" x="0" y="0" width="100" height="100" rx="37"></rect>
<g id="Group" transform="translate(22.000000, 29.000000)">
<g id="Combined-Shape">
<use fill="black" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"></use>
<path stroke="#405236" stroke-width="2.4" d="M46.0583592,18.8 L33.5416408,18.8 L28.4,29.0832816 L14.8583592,2 L2.34164079,2 L24.7416408,46.8 L32.0583592,46.8 L46.0583592,18.8 Z" stroke-linejoin="square" fill="#405236" fill-rule="evenodd"></path>
</g>
<g id="Path">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-3"></use>
<path stroke="#CD4000" stroke-width="2.4" d="M50.0583592,10.8 L54.4583592,2 L41.9416408,2 L37.5416408,10.8 L50.0583592,10.8 Z" stroke-linejoin="square" fill="#CD4000" fill-rule="evenodd"></path>
</g>
<path d="M32.0607372,46.8 L34.6351125,41.6879866 L14.8572527,2 L2.34164079,2 L24.7416408,46.8 L32.0607372,46.8 Z" id="Combined-Shape" stroke="#405236" stroke-width="2.4" fill="#4A5E3F"></path>
<path d="M37.6,2 L52.8210381,2" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M33.6,6 L48.8210381,6" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
<path d="M29.6,10.8 L44.8210381,10.8" id="Line-3" stroke="#CD4000" stroke-width="2.4" stroke-linecap="square"></path>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="500px" height="195px" viewBox="0 0 500 195" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
<title>npm-logo</title>
<description>Created with Sketch (http://www.bohemiancoding.com/sketch)</description>
<defs></defs>
<g id="Page 1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M0,0 L500,0 L500,168 L250,168 L250,195 L139,195 L139,168 L0,168 Z M28.304251,139.493165 L83.536238,139.49349 L83.5362388,55.5592922 L111.304251,55.5592922 L111.304251,139.493491 L138.822477,139.493491 L138.822477,28.4929443 L28.304251,28.4929443 Z M166.333333,28 L166.666667,168 L221.666667,168 L221.666667,140.067308 L277.345845,140.067308 L277.345845,28 Z M221,55 L250,55 L250,112 L221,112 Z M305.333333,28 L305.333333,139 L360.664651,139 L360.664651,55.666008 L388.33133,55.666008 L388.33133,139.000547 L415.967888,139.000547 L415.967888,56 L443.664659,56 L443.664659,139 L471.338699,139 L471.338699,28 Z M305.333333,28" id="Rectangle 1" fill="#CD3632"></path>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,3 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid meet" viewBox="76.58987244897958 44 164.00775510204068 164" width="160.01" height="160"><defs><path d="M237.6 95L187.6 95L187.6 45L237.6 45L237.6 95Z" id="a7nkpY5fFy"></path><path d="M182.59 95L132.59 95L132.59 45L182.59 45L182.59 95Z" id="b21kvNK4d7"></path><path d="M127.59 95L77.59 95L77.59 45L127.59 45L127.59 95Z" id="en4AbanYM"></path><path d="M237.6 150L187.6 150L187.6 100L237.6 100L237.6 150Z" id="a3fjOVtiTl"></path><path d="M182.59 150L132.59 150L132.59 100L182.59 100L182.59 150Z" id="ceoxWhMH1"></path><path d="M182.59 205L132.59 205L132.59 155L182.59 155L182.59 205Z" id="a6qEju1"></path><path d="M237.6 205L187.6 205L187.6 155L237.6 155L237.6 205Z" id="adUpTWfSm"></path><path d="M127.59 205L77.59 205L77.59 155L127.59 155L127.59 205Z" id="b1mjaQmkkR"></path></defs><g><g><use xlink:href="#a7nkpY5fFy" opacity="1" fill="#f9ad00" fill-opacity="1"></use></g><g><use xlink:href="#b21kvNK4d7" opacity="1" fill="#f9ad00" fill-opacity="1"></use></g><g><use xlink:href="#en4AbanYM" opacity="1" fill="#f9ad00" fill-opacity="1"></use></g><g><use xlink:href="#a3fjOVtiTl" opacity="1" fill="#f9ad00" fill-opacity="1"></use></g><g><use xlink:href="#ceoxWhMH1" opacity="1" fill="#ffffff" fill-opacity="1"></use></g><g><use xlink:href="#a6qEju1" opacity="1" fill="#ffffff" fill-opacity="1"></use></g><g><use xlink:href="#adUpTWfSm" opacity="1" fill="#ffffff" fill-opacity="1"></use></g><g><use xlink:href="#b1mjaQmkkR" opacity="1" fill="#ffffff" fill-opacity="1"></use></g></g></svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

Some files were not shown because too many files have changed in this diff Show More