Installations
npm install dir-parser
Developer Guide
Typescript
Yes
Module System
CommonJS
Node Version
16.13.2
NPM Version
8.1.2
Score
70.1
Supply Chain
98.8
Quality
75.1
Maintenance
100
Vulnerability
99.6
License
Releases
Unable to fetch releases
Contributors
Unable to fetch Contributors
Languages
JavaScript (98.38%)
Pug (1.15%)
CSS (0.47%)
Developer
CN-Tower
Download Statistics
Total Downloads
13,571
Last Day
4
Last Week
40
Last Month
329
Last Year
2,735
GitHub Statistics
35 Stars
124 Commits
6 Forks
3 Watching
1 Branches
1 Contributors
Bundle Size
59.71 kB
Minified
20.25 kB
Minified + Gzipped
Package Meta Information
Latest Version
2.1.8
Package Id
dir-parser@2.1.8
Unpacked Size
73.99 kB
Size
11.81 kB
File Count
8
NPM Version
8.1.2
Node Version
16.13.2
Publised On
03 Apr 2023
Total Downloads
Cumulative downloads
Total Downloads
13,571
Last day
-60%
4
Compared to previous day
Last week
-65.5%
40
Compared to previous week
Last month
126.9%
329
Compared to previous month
Last year
10.6%
2,735
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
😎 Dir Parser v2 😎
dir-parser
Parse a directory and generate it's structure tree.
Read this in other languages: English | 简体中文
- dir-parser
1. What is dir-parser
1.1 Introduction
👍👍👍Dir parser is a powerful folder analysis tool based on nodejs, which can be used in command line or JavaScript code. There are many practical parameters that can be set to help you get the formatted folder tree and internal information.
1.2 Installation
1.2.1 Global install
- yarn:
$ yarn global add dir-parser
- npm:
$ npm install -g dir-parser
1.2.2 Local install
- yarn:
$ yarn add dir-parser
or$ yarn add dir-parser -D
- npm:
$ npm install dir-parser
or$ npm install dir-parser -D
2. Command Line
2.1 Print help info
$ parser -h
(or: $ parser --help
)
Usage: parser [options]
Options:
-V, --version output the version number
-v, --version output the version number
-c, --config [config] config file, Optional.
-i, --input <input> target directory (default: "./")
-o, --output <output> output path (default: "./")
-d, --depth <depth> depth of a parse process, 0 means no limit (default: 0)
-l, --lineType <lineType> line type of tree, "dash" or "solid" (default: "solid")
-e, --excludes <excludes..> exclude some directories or files by name.
-x, --excPaths <excPaths..> exclude directories or files by path.
-p, --patterns <patterns...> filter directories or files by RegExp.
-g, --generate [fileName] generate a dir-info file to the output path, "dir-info.txt" is default.
-r, --reverse reverse the parsed dir-tree nodes.
-s, --silent not show the parsed dir-tree in terminal.
-f, --fileFirst print files first, before directories.
-F, --fileOnly pase files only.
-D, --dirOnly pase directories only, and it only takes effect when fileOnly is false.
-I, --ignores <ignores..> ignore some directories or files by name.
-N, --no-dirInfo hide file and directory number info on the result top.
-G, --glob <glob> filter files with glob patterns.
--paths <paths..> filter directories or files by path.
--includes <includes..> filter directories or files by name.
--excPatterns <excPatterns...> exclude directories or files by RegExp.
-H, --Help output chinese usage information.(打印中文帮助信息.)
-h, --help output usage information
2.2 Generate dir-tree
To run demo, you need to install express-generator
:
Run:
$ npm install -g express-generator
$ express myapp
$ cd myapp
$ parser
myapp ( Directories: 7, Files: 9 )
├── bin
│ └── www
├── public
│ ├── images/
│ ├── javascripts/
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
└── package.json
2.3 With parameters
2.3.1 excludes
👉 Exclude some directories or files by name.
$ # git init
$ npm install
$ parser -e .git,node_modules,public
or: $ parser --excludes .git,node_modules,public
myapp ( Directories: 3, Files: 9 )
├── bin
│ └── www
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package-lock.json
└── package.json
Name has white space:
$ touch 'white space.txt'
$ parser -e '[".git", "node_modules", "public", "white space.txt"]'
$ rm -rf white\ space.txt
myapp ( Directories: 3, Files: 9 )
├── bin
│ └── www
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package-lock.json
└── package.json
2.3.2 ignores
👉 Ignore some directories or files by name.
$ parser -e node_modules -I bin,public
or: $ parser -e node_modules --ignores bin,public
myapp ( Directories: 4, Files: 8 )
├── bin/
├── public/
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package-lock.json
└── package.json
2.3.3 glob
👉 Filter by glob pattern. Note: glob pattern must be enclosed in quotation marks
$ parser -e node_modules -G '**/*.js'
or: $ parser -e node_modules --glob '**/*.js'
myapp ( Directories: 1, Files: 3 )
├── routes
│ ├── index.js
│ └── users.js
└── app.js
2.3.4 patterns
👉 Filter directories or files by RegExp.
$ parser -e node_modules -p .js$
or: $ parser -e node_modules --patterns .js$
myapp ( Directories: 1, Files: 3 )
├── routes
│ ├── index.js
│ └── users.js
└── app.js
2.3.5 lineType
👉 Line type of tree, "dash" or "solid" (default: "solid")
$ parser -e bin,node_modules -l dash
or: $ parser -e bin,node_modules --lineType dash
myapp ( Directories: 6, Files: 9 )
+-- public
¦ +-- images/
¦ +-- javascripts/
¦ +-- stylesheets
¦ +-- style.css
+-- routes
¦ +-- index.js
¦ +-- users.js
+-- views
¦ +-- error.jade
¦ +-- index.jade
¦ +-- layout.jade
+-- app.js
+-- package-lock.json
+-- package.json
2.3.6 depth
👉 Depth of a parse process, 0 means no limit (default: 0)
$ parser -e node_modules,views -d 2
or: $ parser -e node_modules,views --depth 2
myapp ( Directories: 6, Files: 6 )
├── bin
│ └── www
├── public
│ ├── images/
│ ├── javascripts/
│ └── stylesheets/*
├── routes
│ ├── index.js
│ └── users.js
├── app.js
├── package-lock.json
└── package.json
2.3.7 reverse
👉 Reverse the parsed dir-tree nodes.
$ parser -e node_modules,views -d 2 -r
or: $ parser -e node_modules,views -d 2 --reverse
myapp ( Directories: 6, Files: 6 )
├── routes
│ ├── users.js
│ └── index.js
├── public
│ ├── stylesheets/*
│ ├── javascripts/
│ └── images/
├── bin
│ └── www
├── package.json
├── package-lock.json
└── app.js
2.3.8 fileFirst
👉 Print files first, before directories.
$ parser -e node_modules,bin,views -f
or: $ parser -e node_modules,bin,views --fileFirst
myapp ( Directories: 5, Files: 6 )
├── app.js
├── package-lock.json
├── package.json
├── public
│ ├── images/
│ ├── javascripts/
│ └── stylesheets
│ └── style.css
└── routes
├── index.js
└── users.js
2.3.9 fileOnly
👉 Pase files only.
$ parser -e node_modules,bin,views -F
or: $ parser -e node_modules,bin,views --fileOnly
myapp ( Directories: 3, Files: 6 )
├── public
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
├── app.js
├── package-lock.json
└── package.json
2.3.10 dirOnly
👉 Pase directories only, and it only takes effect when fileOnly is false.
$ parser -e node_modules,bin,views -D
or: $ parser -e node_modules,bin,views --dirOnly
myapp ( Directories: 5 )
├── public
│ ├── images/
│ ├── javascripts/
│ └── stylesheets/
└── routes/
2.3.11 dirInfo
👉 Hide file and directory number info on the result top.
$ parser -e node_modules,bin,public -N
or: $ parser -e node_modules,bin,public --no-dirInfo
myapp
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package-lock.json
└── package.json
2.3.12 excPaths
👉 Exclude directories or files by path.
$ parser -e node_modules,bin -x myapp/public
or: $ parser -e node_modules,bin -excPath myapp/public
myapp ( Directories: 2, Files: 8 )
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package-lock.json
└── package.json
2.3.13 excPatterns
👉 Exclude directories or files by RegExp.
$ parser -e node_modules,bin --excPatterns .jade$,.css$
myapp ( Directories: 6, Files: 5 )
├── public
│ ├── images/
│ ├── javascripts/
│ └── stylesheets/
├── routes
│ ├── index.js
│ └── users.js
├── views/
├── app.js
├── package-lock.json
└── package.json
2.3.14 silent
👉 Not show the parsed dir-tree in terminal.
$ parser -e node_modules,bin,public -s
or: $ parser -e node_modules,bin,public --silent
2.3.15 generate
👉 Generate a dir-info file to the output path, "dir-info.txt" is default.
$ parser -e node_modules,bin,public -sg
or: $ parser -e node_modules,bin,public -s --generate
$ cat dir-info.txt
myapp ( Directories: 2, Files: 8 )
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package-lock.json
└── package.json
2.3.16 config
👉 Config file, Optional.
$ touch parser.conf.json
$ vi parser.conf.json
1{ 2 "directory": "./", 3 "excludes": [ ".git", "node_modules", "bin", "public", "parser.conf.json" ], 4 "depth": "2", 5 "generate": "info.txt" 6}
$ parser -c ./parser.conf.json
myapp ( Directories: 2, Files: 9 )
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── dir-info.txt
├── package-lock.json
└── package.json
2.4 Use multiple commands together
parser -e node_modules,bin -I views -d 2 -Nr
myapp
├── views/
├── routes
│ ├── users.js
│ └── index.js
├── public
│ ├── stylesheets/*
│ ├── javascripts/
│ └── images/
├── parser.conf.json
├── package.json
├── package-lock.json
├── info.txt
├── dir-info.txt
└── app.js
3. In JavaScript
3.1 Interface
3.1.1 Main Function-parser
1parser(dirPath: string, options: Options): Promise<Parsed>
3.1.2 Options
1interface Options { 2 depth?: number; 3 reverse?: boolean; 4 fileFirst?: boolean; 5 fileOnly?: boolean; 6 dirOnly?: boolean; 7 getFiles?: boolean; 8 getChildren?: boolean; 9 dirTree?: boolean; // default: true 10 dirInfo?: boolean; // default: true 11 lineType?: 'solid' | 'dash'; // default: 'solid' 12 excludes?: Array<string>; // eg: [ '.git', 'node_modules', '.idea' ]; 13 excPaths?: Array<string>; // eg: [ 'src/app' ]; 14 excPatterns?: Array<string>; // eg: [ 'src/*.js ]'; 15 ignores: Array<string>; // eg: [ 'public' ]; 16 includes: Array<string>; // eg: [ 'app.js' ]; 17 paths?: Array<string>; // eg: [ 'src/public' ]; 18 patterns?: Array<string>; // eg: [ '*.js ]'; 19 glob?: string; // eg: '**/*.js'; 20}
3.1.3 Parsed
1interface Parsed extends DirInfo { 2 dirTree: string; 3 children: Array<DirInfo | FileInfo> 4 files: Array<FileInfo> 5}
3.1.4 DirInfo
1interface DirInfo { 2 name: string; 3 type: 'directory'; 4 size: number; 5 size_kb: number; 6 path: string; 7 absPath: string; 8 dir: string; 9 absDir: string; 10 dirNum: number; 11 fileNum: number; 12 children: Array<DirInfo | FileInfo> 13}
3.1.5 FileInfo
1interface FileInfo { 2 name: string; 3 base: string; 4 ext: string; 5 type: 'file'; 6 size: number; 7 size_kb: number; 8 path: string; 9 absPath: string; 10 dir: string; 11 absDir: string; 12}
3.2 Get dir-tree
3.2.1 Make dir-tree example
$ npm install dir-parser funclib
$ touch test.js
$ vi test.js
1const fn = require('funclib'); 2const parser = require('dir-parser'); 3 4parser('./', { 5 excludes: ['.git', 'node_modules'], 6 // lineType: 'dash', 7 // fileFirst: true, 8}).then(parsed => { 9 fn.log(parsed.dirTree, '# parsed.dirTree'); 10 11 // fn.log(fn.pick(parsed, prop => prop !== 'dirTree'), '# parsed result info'); 12 // fn.log(parsed.children, '# parsed.children'); 13 // fn.log(parsed.files, '# parsed.files'); 14});
3.2.2 Run dir-tree example
$ node test.js
==================================================================
[09:48:55] # parsed.dirTree
------------------------------------------------------------------
myapp
├── bin
│ └── www
├── public
│ ├── images/
│ ├── javascripts/
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── dir-info.txt
├── info.txt
├── package-lock.json
├── package.json
├── parser.conf.json
└── test.js
==================================================================
3.3 Get dir-info
3.3.1 Make dir-info example
$ vi test.js
1parser('./', { 2 excludes: ['.git', 'node_modules'], 3 // lineType: 'dash', 4 // fileFirst: true, 5}).then(parsed => { 6 console.log(fn.pretty(fn.pick(parsed, prop => prop !== 'dirTree'))); 7 8 // fn.log(parsed.dirTree, '# parsed.dirTree'); 9 // fn.log(parsed.children, '# parsed.children'); 10 // fn.log(parsed.files, '# parsed.files'); 11});
3.3.2 Run dir-info example
$ node test.js
1{ 2 "name": "myapp", 3 "type": "directory", 4 "path": "./", 5 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp", 6 "dir": ".", 7 "absDir": "/Users/cntower/code/@cntower/dir-parser", 8 "dirNum": 7, 9 "fileNum": 14 10}
3.3.3 Make dir-children example
$ vi test.js
1parser('./', { 2 excludes: ['.git', 'node_modules', 'public'], 3 getFiles: true, // Default is false, If true, returns will conatins an array of all subfiles's info; 4 getChildren: true, // Default is false, If true, returns will conatins an object of all children's info; 5 dirTree: false // Default is true, returns will conatins a tree of the directory; 6}).then(parsed => { 7 console.log(fn.pretty(parsed.children)); 8 // fn.log(parsed.files, '# parsed.files'); 9});
3.3.4 Run dir-children example
$ node test.js
1[ 2 { 3 "name": "bin", 4 "type": "directory", 5 "size": 1591, 6 "size_kb": "1.55kb", 7 "path": "bin", 8 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/bin", 9 "dir": ".", 10 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp", 11 "dirNum": 0, 12 "fileNum": 1, 13 "children": [ 14 { 15 "name": "www", 16 "base": "www", 17 "ext": "", 18 "type": "file", 19 "size": 1591, 20 "size_kb": "1.55kb", 21 "path": "bin/www", 22 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/bin/www", 23 "dir": "bin", 24 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/bin" 25 } 26 ] 27 }, 28 { 29 "name": "routes", 30 "type": "directory", 31 "size": 408, 32 "size_kb": "0.4kb", 33 "path": "routes", 34 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/routes", 35 "dir": ".", 36 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp", 37 "dirNum": 0, 38 "fileNum": 2, 39 "children": [ 40 { 41 "name": "index.js", 42 "base": "index", 43 "ext": ".js", 44 "type": "file", 45 "size": 205, 46 "size_kb": "0.2kb", 47 "path": "routes/index.js", 48 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/routes/index.js", 49 "dir": "routes", 50 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/routes" 51 }, 52 { 53 "name": "users.js", 54 "base": "users", 55 "ext": ".js", 56 "type": "file", 57 "size": 203, 58 "size_kb": "0.2kb", 59 "path": "routes/users.js", 60 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/routes/users.js", 61 "dir": "routes", 62 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/routes" 63 } 64 ] 65 }, 66 { 67 "name": "app.js", 68 "base": "app", 69 "ext": ".js", 70 "type": "file", 71 "size": 1075, 72 "size_kb": "1.05kb", 73 "path": "app.js", 74 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/app.js", 75 "dir": "", 76 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 77 }, 78 { 79 "name": "dir-info.txt", 80 "base": "dir-info", 81 "ext": ".txt", 82 "type": "file", 83 "size": 277, 84 "size_kb": "0.27kb", 85 "path": "dir-info.txt", 86 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/dir-info.txt", 87 "dir": "", 88 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 89 }, 90 { 91 "name": "info.txt", 92 "base": "info", 93 "ext": ".txt", 94 "type": "file", 95 "size": 301, 96 "size_kb": "0.29kb", 97 "path": "info.txt", 98 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/info.txt", 99 "dir": "", 100 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 101 }, 102 { 103 "name": "package-lock.json", 104 "base": "package-lock", 105 "ext": ".json", 106 "type": "file", 107 "size": 68550, 108 "size_kb": "66.94kb", 109 "path": "package-lock.json", 110 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/package-lock.json", 111 "dir": "", 112 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 113 }, 114 { 115 "name": "package.json", 116 "base": "package", 117 "ext": ".json", 118 "type": "file", 119 "size": 347, 120 "size_kb": "0.34kb", 121 "path": "package.json", 122 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/package.json", 123 "dir": "", 124 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 125 }, 126 { 127 "name": "parser.conf.json", 128 "base": "parser.conf", 129 "ext": ".json", 130 "type": "file", 131 "size": 145, 132 "size_kb": "0.14kb", 133 "path": "parser.conf.json", 134 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/parser.conf.json", 135 "dir": "", 136 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 137 }, 138 { 139 "name": "test.js", 140 "base": "test", 141 "ext": ".js", 142 "type": "file", 143 "size": 554, 144 "size_kb": "0.54kb", 145 "path": "test.js", 146 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/test.js", 147 "dir": "", 148 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 149 } 150]
3.3.5 Make dir-files example
$ vi test.js
1parser('./', { 2 excludes: ['.git', 'node_modules', 'public'], 3 getFiles: true, 4 getChildren: true, 5 dirTree: false 6}).then(parsed => { 7 // fn.log(parsed.children, '# parsed.children'); 8 console.log(fn.pretty(parsed.files)); 9});
3.3.6 Run dir-files example
$ node test.js
1[ 2 { 3 "name": "www", 4 "base": "www", 5 "ext": "", 6 "type": "file", 7 "size": 1591, 8 "size_kb": "1.55kb", 9 "path": "bin/www", 10 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/bin/www", 11 "dir": "bin", 12 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/bin" 13 }, 14 { 15 "name": "index.js", 16 "base": "index", 17 "ext": ".js", 18 "type": "file", 19 "size": 205, 20 "size_kb": "0.2kb", 21 "path": "routes/index.js", 22 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/routes/index.js", 23 "dir": "routes", 24 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/routes" 25 }, 26 { 27 "name": "users.js", 28 "base": "users", 29 "ext": ".js", 30 "type": "file", 31 "size": 203, 32 "size_kb": "0.2kb", 33 "path": "routes/users.js", 34 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/routes/users.js", 35 "dir": "routes", 36 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/routes" 37 }, 38 { 39 "name": "error.jade", 40 "base": "error", 41 "ext": ".jade", 42 "type": "file", 43 "size": 84, 44 "size_kb": "0.08kb", 45 "path": "views/error.jade", 46 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/views/error.jade", 47 "dir": "views", 48 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/views" 49 }, 50 { 51 "name": "index.jade", 52 "base": "index", 53 "ext": ".jade", 54 "type": "file", 55 "size": 66, 56 "size_kb": "0.06kb", 57 "path": "views/index.jade", 58 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/views/index.jade", 59 "dir": "views", 60 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/views" 61 }, 62 { 63 "name": "layout.jade", 64 "base": "layout", 65 "ext": ".jade", 66 "type": "file", 67 "size": 125, 68 "size_kb": "0.12kb", 69 "path": "views/layout.jade", 70 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/views/layout.jade", 71 "dir": "views", 72 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp/views" 73 }, 74 { 75 "name": "app.js", 76 "base": "app", 77 "ext": ".js", 78 "type": "file", 79 "size": 1075, 80 "size_kb": "1.05kb", 81 "path": "app.js", 82 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/app.js", 83 "dir": "", 84 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 85 }, 86 { 87 "name": "dir-info.txt", 88 "base": "dir-info", 89 "ext": ".txt", 90 "type": "file", 91 "size": 277, 92 "size_kb": "0.27kb", 93 "path": "dir-info.txt", 94 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/dir-info.txt", 95 "dir": "", 96 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 97 }, 98 { 99 "name": "info.txt", 100 "base": "info", 101 "ext": ".txt", 102 "type": "file", 103 "size": 301, 104 "size_kb": "0.29kb", 105 "path": "info.txt", 106 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/info.txt", 107 "dir": "", 108 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 109 }, 110 { 111 "name": "package-lock.json", 112 "base": "package-lock", 113 "ext": ".json", 114 "type": "file", 115 "size": 68550, 116 "size_kb": "66.94kb", 117 "path": "package-lock.json", 118 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/package-lock.json", 119 "dir": "", 120 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 121 }, 122 { 123 "name": "package.json", 124 "base": "package", 125 "ext": ".json", 126 "type": "file", 127 "size": 347, 128 "size_kb": "0.34kb", 129 "path": "package.json", 130 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/package.json", 131 "dir": "", 132 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 133 }, 134 { 135 "name": "parser.conf.json", 136 "base": "parser.conf", 137 "ext": ".json", 138 "type": "file", 139 "size": 145, 140 "size_kb": "0.14kb", 141 "path": "parser.conf.json", 142 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/parser.conf.json", 143 "dir": "", 144 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 145 }, 146 { 147 "name": "test.js", 148 "base": "test", 149 "ext": ".js", 150 "type": "file", 151 "size": 303, 152 "size_kb": "0.3kb", 153 "path": "test.js", 154 "absPath": "/Users/cntower/code/@cntower/dir-parser/myapp/test.js", 155 "dir": "", 156 "absDir": "/Users/cntower/code/@cntower/dir-parser/myapp" 157 } 158]
No vulnerabilities found.
Reason
no binaries found in the repo
Reason
0 existing vulnerabilities detected
Reason
Found 0/30 approved changesets -- score normalized to 0
Reason
0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Reason
no SAST tool detected
Details
- Warn: no pull requests merged into dev branch
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
- Warn: no security policy file detected
- Warn: no security file to analyze
- Warn: no security file to analyze
- Warn: no security file to analyze
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
license file not detected
Details
- Warn: project does not have a license file
Reason
branch protection not enabled on development/release branches
Details
- Warn: branch protection not enabled for branch 'master'
Score
2.6
/10
Last Scanned on 2025-01-13
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn MoreOther packages similar to dir-parser
parse-filepath
Pollyfill for node.js `path.parse`, parses a filepath into an object.
@hishprorg/dolore-nam
## Note this is a fork of jsinspect that now supports ES2020 standard (and most proposed features), TS and TSX files. It uses Babel 8's parser, upgrading from babylon to the new babel/parser. Support for Flow has been removed in favour of TS.
@teamteanpm2024/optio-temporibus-delectus
Swagger 2.0 and OpenAPI 3.0 parser/validator ============================
@patrtorg/eum-magnam-ducimus
[![github actions][actions-image]][actions-url] [![coverage][codecov-image]][codecov-url] [![dependency status][deps-svg]][deps-url] [![dev dependency status][dev-deps-svg]][dev-deps-url] [![License][license-image]][license-url] [![Downloads][downloads-im