{"analyzedAt":"2022-09-01T11:20:36.920Z","collected":{"metadata":{"name":"node-os-walk","scope":"unscoped","version":"1.0.2","description":"Python's os.walk() implementation for Node.js environments with support for the `for await...of` loops.","keywords":["python","os.walk","os","walk","async","fs","filesystem"],"date":"2022-09-01T10:32:50.439Z","author":{"name":"ncpa0cpl","email":"szymonb21@gmail.com","url":"https://github.com/ncpa0cpl","username":"ncpa0cpl"},"publisher":{"username":"ncpa0cpl","email":"szymonb21@gmail.com"},"maintainers":[{"username":"ncpa0cpl","email":"szymonb21@gmail.com"}],"repository":{"url":"git+https://github.com/ncpa0cpl/node-os-walk.git"},"links":{"npm":"https://www.npmjs.com/package/node-os-walk","homepage":"https://github.com/ncpa0cpl/node-os-walk#readme","repository":"https://github.com/ncpa0cpl/node-os-walk","bugs":"https://github.com/ncpa0cpl/node-os-walk/issues"},"license":"MIT","devDependencies":{"@ncpa0cpl/nodepack":"^1.1.0","@types/jest":"^27.4.0","@types/node":"^17.0.7","@typescript-eslint/eslint-plugin":"^5.9.0","@typescript-eslint/parser":"^5.9.0","eslint":"^8.6.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","husky":"^7.0.4","jest":"^27.4.5","prettier":"^2.5.1","prettier-plugin-jsdoc":"^0.3.30","ts-jest":"^27.1.2","typescript":"^4.5.4"},"releases":[{"from":"2022-08-02T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":1},{"from":"2022-06-03T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":1},{"from":"2022-03-05T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":1},{"from":"2021-09-01T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":3},{"from":"2020-09-01T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":3}],"hasTestScript":true,"readme":"# node-os-walk\n\nPython's os.walk() implementation for Node.js environments with support for the `for await...of` loops.\n\n> It is recommended to use ECMA 2018 target or newer with the `node-os-walk` lib.\n> `for await...of` loops are not supported in older versions.\n\n## Description\n\nGenerate the file names in a directory tree by walking the tree top-down. For each directory in the tree rooted at directory top (including top itself), it yields a 3-tuple: `[dirpath: string, directories: Array<fs.Dirent>, files: Array<fs.Dirent>]`\n\n- `dirpath` - is a string, the path to the directory.\n- `directories` - is a list of `Dirent` objects (from the standard fs Node library) pointing to all of directories found in the `dirpath`\n- `files` - is a list of `Dirent` objects (from the standard fs Node library) pointing to all of files but not directories found in the `dirpath`\n\n### Example\n\n```ts\nimport { walk } from \"node-os-walk\";\nimport path from \"path\";\n\nasync function main() {\n  const rootPath = path.resolve(__dirname, \"./<your-path>\");\n\n  for await (const [root, dirs, files] of walk(rootPath)) {\n    for (const directory of dirs) {\n      console.log(\"Directory:\", path.resolve(root, directory.name));\n    }\n\n    for (const file of files) {\n      console.log(\"File:\", path.resolve(root, file.name));\n    }\n  }\n}\n```\n\n## Options\n\n- **followSymlinks** - by default `walk()` will not list the contents of directories pointed to with symlinks, set this to true to change this behavior.\n\n  > `walk(rootPath, { followSymlinks: true })`\n\n- **ignoreErrors** - walk uses the `fs.readdir()` internally, if this option is set to true any errors thrown by `fs.readdir()` will be suppressed and an empty list of dirs and files will be returned.\n  > `walk(rootPath, { ignoreErrors: true })`"},"npm":{"downloads":[{"from":"2022-08-31T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":1},{"from":"2022-08-25T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":78},{"from":"2022-08-02T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":90},{"from":"2022-06-03T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":175},{"from":"2022-03-05T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":252},{"from":"2021-09-01T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":317}],"starsCount":0},"github":{"starsCount":2,"forksCount":0,"subscribersCount":1,"issues":{"count":0,"openCount":0,"distribution":{"3600":0,"10800":0,"32400":0,"97200":0,"291600":0,"874800":0,"2624400":0,"7873200":0,"23619600":0,"70858800":0,"212576400":0},"isDisabled":false},"contributors":[{"username":"ncpa0cpl","commitsCount":8}],"commits":[{"from":"2022-08-25T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":2},{"from":"2022-08-02T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":6},{"from":"2022-06-03T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":6},{"from":"2022-03-05T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":6},{"from":"2021-09-01T00:00:00.000Z","to":"2022-09-01T00:00:00.000Z","count":8}]},"source":{"files":{"readmeSize":1780,"testsSize":2141,"hasNpmIgnore":true},"linters":["eslint","prettier"]}},"evaluation":{"quality":{"carefulness":0.9199999999999999,"tests":0.6,"health":1,"branding":0},"popularity":{"communityInterest":4,"downloadsCount":58.333333333333336,"downloadsAcceleration":0.6657534246575343,"dependentsCount":0},"maintenance":{"releasesFrequency":0.9,"commitsFrequency":0.9,"openIssues":0.9,"issuesDistribution":0.9}},"score":{"final":0.6123458767819486,"detail":{"quality":0.8364556389013833,"popularity":0.032713513788927104,"maintenance":0.999884157958312}}}