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

node-shyp

v0.7.0

Published

Precompile your node modules, use npm as your data store:

Downloads

10

Readme

node-shyp

Precompile your node modules, use npm as your data store:

coolmodule
optional:
  coolmodule-shyp-win32-x64
  coolmodule-shyp-win32-ia32
  coolmodule-shyp-darwin-x64
  coolmodule-shyp-darwin-ia32
  ...

Installation

To install

npm install -g node-shyp

Instructions

node-shyp is simple. All your node-gyp configuration works as before, with just a few modifications to package.json.

1. Run node-shyp init to create default shyp-blacklist.js file in your root

2. Set your "install" script to blacklist compiled platforms on npm install

"scripts": {
	"install": "node shyp-blacklist.js win32-x64 [etc...] || node-gyp rebuild"
}

3. Add compiled modules as optional dependencies

Node will only install those dependencies that match your arch/platform (due to the published code's package.json settings).

{
	"version": "1.1.3",
	"optionalDependencies": {
       "coolmodule-shyp-win32-x64": "1.1.x",
       ...
    }
}

4. Run node-shyp publish from the root directory on each platform you build for.

This will publish the compiled versions of the code to npm.

5. npm install bindings-shyp to load the precompiled version or the loaded version.

Just like the bindings module.

module.exports = require('bindings-shyp')('canvas')

Building against Node versions

Shyp automatically compiles against multiple Node versions for compatibility. (As of Feb 2013, releasing for stable versions means building against 0.8.26 and 0.10.26.) These are hardcoded though they probably shouldn't be.

  • 0.8.x uses the tag "v8.3-11" for its node version.
  • 0.10.x uses the tag "v8.3-14" until 0.10.4, where NODE_MODULE_VERSION is exposed. Shyp hardcodes this version to equal "node-v11".
  • 0.10.4 onward uses "node-v11".
  • 0.11.x uses "node-v14".

License

MIT