diff --git a/lib/util/folder.js b/lib/util/folder.js
index <HASH>..<HASH> 100644
--- a/lib/util/folder.js
+++ b/lib/util/folder.js
@@ -3,12 +3,29 @@
  */
 // a util to traverse folder and filter files
 'use strict';
+var fs = require('fs');
 
 // do a bfs search to certain folder with ceratin depth
-function bfs(){
+function bfs() {
+    // TODO:
+}
 
+function dfs(dir) {
+    var result = [];
+    var root = fs.readdirSync(dir);
+    for (var i = 0; i < root.length; i++) {
+        var filePath = dir + '/' + root[i];
+        var stat = fs.statSync(filePath);
+        if (stat && stat.isDirectory()) {
+            result = result.concat(dfs(filePath));
+        } else {
+            result.push(filePath);
+        }
+    }
+    return result;
 }
 
 module.exports = {
-    bfs: bfs
+    bfs: bfs,
+    dfs: dfs
 };
\ No newline at end of file
Add dfs for walk files

need to add the bfs one, in order to show a tree view