Skip to content

Instantly share code, notes, and snippets.

@thlorenz
Last active December 18, 2015 08:59
Show Gist options
  • Save thlorenz/5757812 to your computer and use it in GitHub Desktop.
Save thlorenz/5757812 to your computer and use it in GitHub Desktop.
Details outlining the talk about valuepack

What is the talk about?

valuepack a tool that will help the developers select the right npm module for the job. It is a community driven package rating tool, read more about it's goals.

Approximate Talk Time: 20-30 min

What is valuepack?

valuepack will consist of:

  • a JSON API that allows querying for packages and have them sorted by ratings derived from community feedback
  • a website which will be the UI interface to this API and allows entering more detailed user feedback

How is the talk structured?

Introduction to valuepack

  • what is valuepack an what problems does it solve
  • a demo on how it helps find packages
  • a demo on how users can influence ratings with votes
  • explanation of criteria taken into account when rating a module which segues into the next topic

The properties of a well implemented package

I will explain and give examples for the following:

Properties of the package itself

  • open sourced (on github)
  • contains LICENSE and properly structured package.json
  • published on npm
  • has tests
  • includes continuous integration (travis, testling)
  • well documented (including example)
  • solves one problem and one problem only and is thus very small
  • lots of stars (not directly under author's control), but good indicator of community acceptance

Proper support for the package

  • issues get resolved or at least responded to in a timely manner
  • properly implemented pull requests are accepted

All these properties are/will be included by valuepack in order to rate a package.

Bonus content

In case there is more time, I could go into some challenges I faced and how I solve them, i.e.:

  • github max limit (requires to become smart about what to update)
  • github responses are pages and need to be followed
  • bottom up approach required supplying scripts to exercise each part

and/or will quickly show available tools to get your package into the proper state, one of which (testlingify) I myself contributed.

But, valuepack is not finished?

I'm working daily on implementing the minimum feature set needed to make this useful to the community. So far the npm mining tool and github mining tool are implemented and store all data in a leveldb database.

Next I will run an analyzer over this data and implement a simple JSON API to make the analyzed data available to everyone. Then I'll put up the web interface.

I'm confident to have the above finished in under 2 months, so there will definitely be something to demo by the time the conference takes place. So this talk could be a nice way to introduce the community to valuepack.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment