var walkSync = function(dir, recurse, filelist) { var fs = fs || require('fs'), files = fs.readdirSync(dir); filelist = filelist || []; recurse = recurse || false; files.forEach(function(file) { if (fs.statSync(dir + file).isDirectory()) { if(recurse){ filelist = walkSync(dir + file + '/', recurse, filelist); } } else { filelist.push(dir+file); } }); return filelist; }; console.log(walkSync("./", true));