Download a package from npm as a tar (not installing it to a module)

前端 未结 5 876
滥情空心
滥情空心 2021-01-30 06:18

Is there some URL from which I can download a given package from npm (as a tarball or something)? I need the exact files that were originally uploaded to npm.

Using

相关标签:
5条回答
  • 2021-01-30 07:00

    If you need to get the tarball without having npm installed, you can fetch the package information using curl and use jq to get the right information from the JSON:

    curl https://registry.npmjs.org/PACKAGE-NAME/ \
        | jq '.versions[."dist-tags".latest].dist.tarball'
    

    This is for instance useful if you're building a Docker container that requires one npm package, and don't want to install npm just for that.

    0 讨论(0)
  • 2021-01-30 07:06

    You can use npm view to get the URL to the registry's tarball (in this example for the module level):

    $ npm view level dist.tarball
    

    And to download tarball, you can use npm pack:

    $ npm pack level
    
    0 讨论(0)
  • 2021-01-30 07:12

    Yes, you can npm install <git remote URL> to download the full repository into node_modules. This will be directly from the repository's host, rather than via npm, though. See the npm install docs for more information.

    0 讨论(0)
  • 2021-01-30 07:13

    Just run the command

    npm view [package name] dist.tarball
    

    It will return a tar url.

    0 讨论(0)
  • 2021-01-30 07:25

    Running npm pack PACKAGE_NAME will download a tarball of any package on npm.

    To extract it, just run tar -xzf DOWNLOADED_FILE.tgz

    Example:

    npm pack react
    

    then extract:

    tar -xzf react-16.6.3.tgz
    
    0 讨论(0)
提交回复
热议问题