valid-directory
Check whether or not a directory and its descendants are valid
Validity determined via the @bevry/valid-filename
package.
Requires Node.js version >= 18 for recursive directory support.
Usage
API
import validate from 'valid-directory'
const path = process.cwd()
validate(path)
.then(([valid, invalidPaths]) => {
if (valid) {
console.log(path, 'is a valid directory')
} else {
console.log(
path,
'is an INVALID directory due to these:',
invalidPaths,
)
process.exit(1)
}
})
.catch((err) => throw err)
Executable
Run npm install -g valid-directory
then run against the current working directory with valid-directory
or a specified directory via valid-directory <path>
.
Exit code will be 1
if a path is invalid, 2
if something went wrong, and 0
if validation passed.
Packages
To validate your packages before you publish them, you can do the following:
- Inside your package directory, run:
npm install --save-dev valid-directory
- Then append
&& npx valid-directory
to yourtest
script inside yourpackage.json
file
Install
npm
Install Globally
- Install:
npm install --global valid-directory
- Executable:
valid-directory
Install Locally
- Install:
npm install --save valid-directory
- Executable:
npx valid-directory
- Import:
import pkg from ('valid-directory')
- Require:
const pkg = require('valid-directory').default
Editions
This package is published with the following editions:
-
valid-directory/source/index.ts
is TypeScript source code with Import for modules -
valid-directory
aliasesvalid-directory/edition-es2022/index.js
-
valid-directory/edition-es2022/index.js
is TypeScript compiled against ES2022 for Node.js 18 || 20 || 21 with Require for modules -
valid-directory/edition-es2022-esm/index.js
is TypeScript compiled against ES2022 for Node.js 18 || 20 || 21 with Import for modules
History
Discover the release history by heading on over to the HISTORY.md
file.
Contribute
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
Backers
Maintainers
These amazing people are maintaining this project:
Sponsors
No sponsors yet! Will you be the first?
Contributors
These amazing people have contributed code to this project:
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
License
Unless stated otherwise all works are:
- Copyright © 2018+ Benjamin Lupton
and licensed under: