0.0.10 • Published 6 years ago

walk-dir v0.0.10

Weekly downloads
18
License
MIT
Repository
github
Last release
6 years ago

walk-Dir

NPM-Module used to "walk" through a directory, revealing the contained folders and files in a practical way.

Why

Oftentimes when working with a node.js application, it is necessary to retrieve the structure of a certain folder in an easy-to-parse form. This is useful e.g. when building an express.js-router or for bootstrapping child-modules automatically.

##Setup Install walkDir via npm install walk-dir --save

Make sure not to confuse this module with "walkdir", this is "walk-dir"!

Usage

1) Require walkDir using var walkDir = require("walkdir"); 2) Choose one of the following methods it provides:

2.1 **List**

    `walkDir.list(excludedPath, includedPath, depth)`
    
+ `excludedPath`: beginning of your search-path which should **not** be included in the results.

+ `includedPath`: end of your search-path which **should** be included in the results.

+ `depth`: At what level of depth should the recursive search end?
    
    + 0: Never. End when all subdirectories have been found and listed.
    + x: End after peeking into x levels of folders, 1 being the provided path

+ **returns**: Array of Strings representing the paths to found folders and files

2.2 **Tree**

        `walkDir.tree(excludedPath, includedPath, depth)`

+ `excludedPath`: beginning of your search-path which should **not** be included in the results.
+ `includedPath`: end of your search-path which **should** be included in the results.
+ `depth`: At what level of depth should the recursive search end?
    + 0: Never. End when all subdirectories have been found and listed.
    + x: End after peeking into x levels of folders, 1 being the provided path
+ **returns**: JS-Object-tree where folders are branches and leaves are "true". -> Full paths are built from object-keys.

3) Decide on using the synchronous, promise-based or callback-based version

3.1 **Synchronous**
+ All methods are available as Synchronous versions by simply appending "Sync" to it
+ e.g. list**Sync**, tree**Sync**

3.2 **Promises**
+ All methods return [*promises*]("https://developers.google.com/web/fundamentals/primers/promises")
+ simply use them to react to success/failure of the given method
+ e.g. `list(...).then(function(result){/** do sth with result **/ }).catch(function(err){/** react to error **/)`

3.3 **Callbacks**
+ All methods accept a *callback*-function as optional last argument
+ simply pass this function using the signature `function(err, result){...}`
+ e.g. `list(..., function(err, result){/** do sth with result if !err */})`
0.0.10

6 years ago

0.0.8

6 years ago

0.0.7

6 years ago

0.0.6

6 years ago

0.0.5

6 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.1

6 years ago