npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

craft-plugin-downloader

v1.0.4

Published

I've created this module for CraftCMS 2, because I found it rather annoying to download a plugins .zip file, extract it and copy to my project.

Downloads

38

Readme

Craft Plugin Downloader

I've created this module for CraftCMS 2, because I found it rather annoying to download a plugins .zip file, extract it and copy to my project.

This module simplifies the process, so that you only need to type yarn craft-plugin-downloader install <github repo url> in your terminal and it will download the plugin, extract it and copy it to the defined CraftCMS plugin folder.

If you want a different version you could provide the URL to the .zip File. For Example to download v1 of the Craft Element API Plugin you could use

yarn craft-plugin-downloader install https://github.com/craftcms/element-api/archive/v1.zip

If you don't use yarn, please see the explanation further down.

Installation

with yarn

yarn add craft-plugin-downloader --dev

with npm

npm install craft-plugin-downloader --dev

Add this to your package.json

"craftPluginDownloader": {
    "plugins": [],
    "tmpFolder": "tmp/folder/for/the/download/",
    "pluginPath": "path/to/your/craft/plugins/folder/"
}
  • plugins: All plugin URLs installed via this module are added to this array
  • tmpFolder: Path to a temporary folder which holds the downlowed files
  • pluginPath: Path to you CraftCMS plugin folder

pluginPath and tmpFolder are relative to your project root.

Usage

The script provides three commands.

  • install <URL> Install a CraftCMS plugin from a Github URL
  • update Update all plugins listed in the "plugins" array within your package.json
  • all Install all plugins listed in the "plugins" array within your package.json

For easier use, you can add these commands in the scripts part of your package.json.

"scripts": {
    "installPlugin": "craft-plugin-downloader install",
    "updatePlugins": "craft-plugin-downloader update",
    "installAllPlugins": "craft-plugin-downloader all"
}

Then use them like this with npm

npm run installPlugin <URL to Github repo>

with yarn

yarn installPlugin <URL to Github repo>

Known issues

Sometimes there is a problem with node-progress and you get an error like this

RangeError: Invalid array length
    at ProgressBar.render (/project/node_modules/craft-plugin-downloader/node_modules/progress/lib/node-progress.js:155:14)
    at ontimeout (timers.js:469:11)
    at tryOnTimeout (timers.js:304:5)
    at Timer.listOnTimeout (timers.js:264:5)
error Command failed with exit code 1.

If this error occurs please just repeat the command.