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

rm-webhook

v3.0.9

Published

WebHook CLI wrapper for RISD Media self-hosted WebHook

Downloads

49

Readme

rm-webhook

A wrapper around the self hosted friendly version of webhook

Setup

npm install rm-webhook grunt -g

Ensure you have a wh.json file saved at ~/.risdmedia/wh.json. It should include the following keys:

{
  "embedly": ""
  "server": ""
  "firebase": ""
  "firebaseAPIKey": ""
  "domain": ""
  "generate": ""
  "platformName": ""
}

The values of which are in 1Password as a secure note under the title rm-webhook config (wh.json).

  • embedly is an Embedly API key. This will be used within the CMS to embed JSON data from URLs into the database.
  • server is the URL of the @risd/webhook-open-serer instance. Including the protocal to use, http or https. This will be used to update the elastic search which is used in the CMS, as well as uploaded files to the UPLOADS_BUCKET of the server.
  • firebase is the name of the firebase realtime database being used to back the platform.
  • firebaseAPIKey is the web API key for the firebase project being used to back the platform.
  • domain is the default development domain.
  • generate is the source of the static site generator. This can be a URL to a tarball, or an npm install package string, such as @risd/webhook-generate@^2.2. This will be used to download the base when creating a new site, or updating an existing site.

Usage

rm-wh create {site-name}
rm-wh init {site-name}
rm-wh serve
rm-wh push
rm-wh github
rm-wh github:set {user/repo}
rm-wh github:remove
rm-wh list-sites
rm-wh deploy
rm-wh deploys
rm-wh deploys:set {domain}
rm-wh deploys:remove {domain}
rm-wh map-domain {mask-domain} {content-domain}
rm-wh backup {toFile}
rm-wh restore {fromFile}
rm-wh preset-build
rm-wh preset-build-all
rm-wh reset-keys
rm-wh reset-keys:sites
rm-wh reset-keys:users
rm-wh deploy-static {domain}
rm-wh push-static {domain}
rm-wh update-sites
rm-wh echo-options

rm-wh create

Use this command to create a new website in webhook.

rm-wh create {site-name}

If site-name does not include a top level domain, the domain key from the --configuration flag or default configuration will be used to create a full domain name.

rm-wh init

Use this command from within a webhook site directory. This will run npm install & subsequently prepare the .firebase.conf & pages/cms.html based on files within the libs directory.

rm-wh init {site-name}

If site-name does not include a top level domain, the domain key from the --configuration flag or default configuration will be used to create a full domain name.

rm-wh serve

rm-wh push

rm-wh github

rm-wh github:set

rm-wh github:remove

rm-wh list-sites

rm-wh deploy

rm-wh deploys

rm-wh deploys:set

rm-wh deploys:remove

rm-wh map-domain

rm-wh backup

rm-wh restore

rm-wh preset-build

rm-wh preset-build-all

rm-wh reset-keys

rm-wh reset-keys:sites

rm-wh reset-keys:users

rm-wh deploy-static

rm-wh push-static

rm-wh update-sites

This command can be used to update sites in batch.

Using the github user/repo string defined in management/sites/{site-name}/github

rm-wh update-sites {site-names}

site-names is a string that will get passed into minimatch, along with all of the sites that are owned by the account that is used to log in after issuing this command.

The --generate argument will be used to download a tarball that is used to make the sites from. --generate is expected to be an npm module string such as @risd/webhook-generate, or tarball URL.

For example: rm-wh update-sites '!*edu*' will update all non edu sites. This is useful on RISD webhook, as a way to update all sites that are compatible with the batch uploader. Extra configuration would have to go into making this comptable with the risd-edu repo, since that repo is a mono repo, with one package being a webhook site. This command expects that the git repo's it pulls from are webhook sites at their root.

For each site that is being updated, the current risd.systems generator package semver value, saved in package.json under the key ["risd.systems"]["generate"], will be used to determine which migrations should be applied to the code base. The update-sites process will determine if there are any migrations to apply by comparing the current site generate semver against the update generate semver value. These migrations are functions that modify the code base to align with the update generator version that is being applied to the site. This is useful for capturing updates that occur outside of the scope of the typical site update, which only changes within the libs, tasks, options directories & the package.json.

rm-wh echo-options