2.8 KiB
unpkg
unpkg is a fast, global content delivery network for everything on npm. Use it to quickly and easily load any file from any package using a URL like:
unpkg.com/:package@:version/:file
Examples
Using a fixed version:
- unpkg.com/react@16.0.0/umd/react.production.min.js
- unpkg.com/react-dom@16.0.0/umd/react-dom.production.min.js
You may also use a semver range or a tag instead of a fixed version number, or omit the version/tag entirely to use the latest
tag.
If you omit the file path (i.e. use a "bare" URL), unpkg will serve the file specified by the unpkg
field in package.json
, or fall back to main
.
Append a /
at the end of a URL to view a listing of all the files in a package.
Query Parameters
- ?meta
- Return metadata about any file in a package as JSON (e.g. `/any/file?meta`)
- ?module
- Expands all ["bare" `import` specifiers](https://html.spec.whatwg.org/multipage/webappapis.html#resolve-a-module-specifier) in JavaScript modules to unpkg URLs. This feature is *very experimental*
Cache Behavior
The CDN caches files based on their permanent URL, which includes the npm package version. This works because npm does not allow package authors to overwrite a package that has already been published with a different one at the same version number.
URLs that do not specify a package version number redirect to one that does. This is the latest
version when no version is specified, or the maxSatisfying
version when a semver version is given. Redirects are cached for 5 minutes.
Browsers are instructed (via the Cache-Control
header) to cache assets for 4 hours.
Feedback
If you think this is useful, we'd love to hear from you. Please reach out to @unpkg with any questions or concerns.
Sponsors
The project is sponsored by Cloudflare and Heroku.