improving NPM interface