Wondering what’s next for npm?Check out our public roadmap! »


1.4.1 • Public • Published


Fast checking of top level NPM and Bower dependencies based on version numbers.

NPM info

Build status dependencies devdependencies manpm semantic-release renovate-app badge

See grunt-deps-ok for integrating this task into grunt pipeline.


Install as a global tool

npm install -g deps-ok

Install as a project's dependency

npm install --save-dev deps-ok

Use as a global tool

Checks modules until the first module without valid install. Prints first found error and exits with code 1 if one of the top level dependencies is missing or out of date.

// from the package's root folder execute

deps-ok --verbose
// prints declared and installed version numbers

deps-ok --filename path/to/package.json
// checks give package.json (not in this folder)

Checks both dependencies listed in your package.json and bower.json

If deps-ok finds a problem, then run npm install or bower install

Use as 3rd party module

You can use deps-ok from another module

npm install deps-ok --save
var depsOk = require('deps-ok');
var ok = depsOk(process.cwd(), false /* verbose */);

Use with gulp

If you prefer using gulp, you can quickly just add a task

gulp.task('deps-ok', function () {
  var gutil = require('gulp-util');
  var depsOk = require('deps-ok');
  var ok = depsOk(process.cwd(), false /* verbose */);
  if (!ok) {
    gulp.emit('error', new gutil.PluginError('deps-ok', 'Found outdated installs'));
gulp.task('default', ['deps-ok', ...]);


  • --allow-duplicate <name> allows same dependency to be declared in dev and peer dependencies (or other combinations). Useful if you are developing a plugin that requires the main tool (peer) but also uses the main tool for testing (dev).
$ deps-ok --allow-duplicate angular
$ deps-ok --allow-duplicate angular --allow-duplicate jquery
  • --verbose prints verbose console messages, but using DEBUG=deps-ok is a better method

  • --skip-version-check is used to load and check versions but skip actual physical file checks. Useful in end to end testing.


This check will reject packages without "version" property in the package.json file.


See debug messages by running module with DEBUG=deps-ok environment variable

Small print

Author: Gleb Bahmutov © 2013

License: MIT - do anything with the code, but don't blame me if it does not work.

Support: if you find any problems with this module, email / tweet / open issue on Github


npm i deps-ok

DownloadsWeekly Downloads






Unpacked Size

19.5 kB

Total Files


Last publish


  • avatar