Yarn Protocols

Yarn supports a rich set of dependency protocols beyond `npm:` semver — `git:`, `github:`, `file:`, `link:`, `portal:`, `patch:`, `exec:`, `workspace:`, and `http(s):`. Protocols are pluggable so custom resolvers can be added via plugins.

API entry from apis.yml

apis.yml Raw ↑
aid: yarn-pkg:yarn-protocols
name: Yarn Protocols
tags:
- Protocols
- Dependency Resolution
- JavaScript
humanURL: https://yarnpkg.com/protocol/npm
properties:
- url: https://yarnpkg.com/protocols
  type: Documentation
- url: https://yarnpkg.com/protocol/npm
  type: Documentation
- url: https://yarnpkg.com/protocol/git
  type: Documentation
- url: https://yarnpkg.com/protocol/github
  type: Documentation
- url: https://yarnpkg.com/protocol/file
  type: Documentation
- url: https://yarnpkg.com/protocol/link
  type: Documentation
- url: https://yarnpkg.com/protocol/portal
  type: Documentation
- url: https://yarnpkg.com/protocol/patch
  type: Documentation
- url: https://yarnpkg.com/protocol/exec
  type: Documentation
- url: https://yarnpkg.com/protocol/workspace
  type: Documentation
description: Yarn supports a rich set of dependency protocols beyond `npm:` semver — `git:`, `github:`,
  `file:`, `link:`, `portal:`, `patch:`, `exec:`, `workspace:`, and `http(s):`. Protocols are pluggable
  so custom resolvers can be added via plugins.