{"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"keywords":["directory","lister"],"dist-tags":{"latest":"2.1.1"},"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"description":"Get an array of all files in a directory and subdirectories.","readme":"# recursive-readdir\n\n[![Build Status](https://travis-ci.org/jergason/recursive-readdir.svg?branch=master)](https://travis-ci.org/jergason/recursive-readdir)\n\nA simple Node module for recursively listing all files in a directory,\nor in any subdirectories.\n\nIt does not list directories themselves.\n\nBecause it uses fs.readdir, which calls [readdir](http://linux.die.net/man/3/readdir) under the hood\non OS X and Linux, the order of files inside directories is [not guaranteed](http://stackoverflow.com/questions/8977441/does-readdir-guarantee-an-order).\n\n## Installation\n\n    npm install recursive-readdir\n\n## Usage\n\n\n```javascript\nvar recursive = require('recursive-readdir');\n\nrecursive('some/path', function (err, files) {\n  // Files is an array of filename\n  console.log(files);\n});\n```\n\nIt can also take a list of files to ignore.\n\n```javascript\nvar recursive = require('recursive-readdir');\n\n// ignore files named 'foo.cs' or files that end in '.html'.\nrecursive('some/path', ['foo.cs', '*.html'], function (err, files) {\n  // Files is an array of filename\n  console.log(files);\n});\n```\n\nYou can also pass functions which are called to determine whether or not to\nignore a file:\n\n```javascript\nvar recursive = require('recursive-readdir');\n\nfunction ignoreFunc(file, stats) {\n  // `file` is the absolute path to the file, and `stats` is an `fs.Stats`\n  // object returned from `fs.lstat()`.\n  return stats.isDirectory() && path.basename(file) == \"test\";\n}\n\n// Ignore files named 'foo.cs' and descendants of directories named test\nrecursive('some/path', ['foo.cs', ignoreFunc], function (err, files) {\n  // Files is an array of filename\n  console.log(files);\n});\n```\n\nThe ignore strings support Glob syntax via\n[minimatch](https://github.com/isaacs/minimatch).\n","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"users":{"iwill":true,"f1lt3r":true,"johnnychq":true,"jacoborus":true,"tirramissu":true,"danilosampaio":true,"avdons":true,"jondashkyle":true,"ajedi32":true,"redmonkeydf":true,"curioussavage":true,"vamakoda":true,"stefanof":true,"arttse":true,"nickytonline":true,"deparadise":true,"danielbayley":true,"coolhanddev":true,"diversen":true,"ferrari":true,"hyzual":true,"azevedo":true,"wisecolt":true,"rylan_yan":true,"larrychen":true,"scytalezero":true,"xueboren":true},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"license":"MIT","versions":{"0.0.1":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","version":"0.0.1","repository":{"type":"git","url":""},"main":"./index.js","scripts":{"test":"vows"},"keywords":["directory","lister"],"engines":{"node":"~0.6.6"},"dependencies":{},"devDependencies":{"vows":"0.6.1"},"_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"_id":"recursive-readdir@0.0.1","_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.6.6","_defaultsLoaded":true,"dist":{"shasum":"2f21fa82565f746e3918e258b692c6098828522e","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-0.0.1.tgz"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"0.0.2":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","version":"0.0.2","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{},"devDependencies":{"mocha":"~1.14.0"},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"_id":"recursive-readdir@0.0.2","dist":{"shasum":"0bc47dc4838e646dccfba0507b5e57ffbff35f7c","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-0.0.2.tgz"},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"1.0.0":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.0.0","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{},"devDependencies":{"mocha":"~1.14.0"},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.0.0","dist":{"shasum":"61dae2ad7ef6ccfd13c05334965aca761ad06ad0","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.0.0.tgz"},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"1.1.0":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.1.0","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{},"devDependencies":{"mocha":"~1.14.0"},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.1.0","dist":{"shasum":"4900495b6343e61718b5dff687a51f0f495cb065","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.1.0.tgz"},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"1.1.1":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.1.1","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{},"devDependencies":{"mocha":"~1.14.0"},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.1.1","dist":{"shasum":"3551a663576a6e91ed2a9af1bad0cec109ad0cc3","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.1.1.tgz"},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"1.1.2":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.1.2","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{},"devDependencies":{"mocha":"~1.14.0"},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.1.2","dist":{"shasum":"b7ba725384641751c4a092109fa47919c0a0ce04","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.1.2.tgz"},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"1.1.3":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.1.3","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{},"devDependencies":{"mocha":"~1.14.0"},"bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.1.3","dist":{"shasum":"a1737cba4c552606c7845ff11ad4c1f69f93d5dc","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.1.3.tgz"},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"1.2.0":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.2.0","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{"minimatch":"~0.3.0"},"devDependencies":{"mocha":"~1.14.0"},"gitHead":"2a673c272d85f3217cd1a4682dc33eca7a33e58d","bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.2.0","_shasum":"9696a8ace3ccf5658e571c2ffee0abc3a94aa546","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"dist":{"shasum":"9696a8ace3ccf5658e571c2ffee0abc3a94aa546","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.2.0.tgz"},"directories":{}},"1.2.1":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.2.1","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{"minimatch":"~0.3.0"},"devDependencies":{"mocha":"~1.14.0"},"gitHead":"3916668833e2ecb5ecc66673ab84ee4d8ccffa76","bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir","_id":"recursive-readdir@1.2.1","_shasum":"497c6d06223852732d471d2da263de00a627952c","_from":".","_npmVersion":"2.1.17","_nodeVersion":"0.11.14","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"dist":{"shasum":"497c6d06223852732d471d2da263de00a627952c","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.2.1.tgz"},"directories":{}},"1.3.0":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"1.3.0","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{"minimatch":"0.3.0"},"devDependencies":{"mocha":"1.14.0"},"gitHead":"fcd1c8d8c07abef1dd27cda5046ec66d12c0a06d","bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir#readme","_id":"recursive-readdir@1.3.0","_shasum":"c6e66c9ae473f4928f8e6c67a05d80e7a56528ef","_from":".","_npmVersion":"2.13.2","_nodeVersion":"0.12.4","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"dist":{"shasum":"c6e66c9ae473f4928f8e6c67a05d80e7a56528ef","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-1.3.0.tgz"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"directories":{}},"2.0.0":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"2.0.0","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.6.6"},"dependencies":{"minimatch":"0.3.0"},"devDependencies":{"mocha":"1.14.0"},"gitHead":"577b411df1c8ab118c11dc9431d865f25e87024b","bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir#readme","_id":"recursive-readdir@2.0.0","_shasum":"8c46db7946cbaf3d4ebade1873f33d8cd973131a","_from":".","_npmVersion":"3.6.0","_nodeVersion":"4.2.6","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"dist":{"shasum":"8c46db7946cbaf3d4ebade1873f33d8cd973131a","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-2.0.0.tgz"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/recursive-readdir-2.0.0.tgz_1459917069405_0.9277486486826092"},"directories":{}},"2.1.0":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"2.1.0","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.10.0"},"dependencies":{"minimatch":"3.0.2"},"devDependencies":{"mocha":"1.14.0"},"gitHead":"63f93b42f622f5d0d0ae18a303acf63a4d57fa49","bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir#readme","_id":"recursive-readdir@2.1.0","_shasum":"78b7bfd79582d3d7596b8ff1bd29fbd50229f6aa","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.6.0","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"dist":{"shasum":"78b7bfd79582d3d7596b8ff1bd29fbd50229f6aa","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-2.1.0.tgz"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/recursive-readdir-2.1.0.tgz_1474322128418_0.45919444505125284"},"directories":{}},"2.1.1":{"author":{"name":"Jamison Dance","email":"jergason@gmail.com","url":"http://jamisondance.com/"},"name":"recursive-readdir","description":"Get an array of all files in a directory and subdirectories.","license":"MIT","version":"2.1.1","repository":{"type":"git","url":"git://github.com/jergason/recursive-readdir.git"},"main":"./index.js","scripts":{"test":"mocha test/"},"keywords":["directory","lister"],"engines":{"node":">=0.10.0"},"dependencies":{"minimatch":"3.0.3"},"devDependencies":{"mocha":"1.14.0"},"gitHead":"1e7954e8b3f3716beab429d2b889abb42f79781d","bugs":{"url":"https://github.com/jergason/recursive-readdir/issues"},"homepage":"https://github.com/jergason/recursive-readdir#readme","_id":"recursive-readdir@2.1.1","_shasum":"a01cfc7f7f38a53ec096a096f63a50489c3e297c","_from":".","_npmVersion":"4.0.5","_nodeVersion":"7.4.0","_npmUser":{"name":"jergason","email":"jergason@gmail.com"},"dist":{"shasum":"a01cfc7f7f38a53ec096a096f63a50489c3e297c","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/recursive-readdir/-/recursive-readdir-2.1.1.tgz"},"maintainers":[{"name":"jergason","email":"jergason@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/recursive-readdir-2.1.1.tgz_1487130078506_0.790333661949262"},"directories":{}}},"name":"recursive-readdir","time":{"modified":"2017-03-06T09:28:30.842Z","created":"2012-01-07T00:07:13.894Z","0.0.1":"2012-01-07T00:07:15.010Z","0.0.2":"2013-11-09T00:40:25.564Z","1.0.0":"2014-03-15T18:43:01.740Z","1.1.0":"2014-05-02T15:54:53.633Z","1.1.1":"2014-05-20T17:03:49.359Z","1.1.2":"2014-06-27T14:31:12.689Z","1.1.3":"2014-07-16T15:26:28.076Z","1.2.0":"2014-08-17T01:33:13.136Z","1.2.1":"2015-01-14T16:52:30.807Z","1.3.0":"2015-10-28T14:23:27.018Z","2.0.0":"2016-04-06T04:31:11.589Z","2.1.0":"2016-09-19T21:55:30.469Z","2.1.1":"2017-02-15T03:41:18.958Z"},"readmeFilename":"README.md","homepage":"https://github.com/jergason/recursive-readdir#readme"}