Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

valid-directory

bevry978Artistic-2.04.9.0TypeScript support: included

Check whether or not a directory and its descendants are valid

check, deno, deno-edition, deno-entry, denoland, detect, es2022, export-default, fs, is, node, test, typed, types, typescript, valid, validate, windows

readme

valid-directory

Status of the GitHub Workflow: bevry NPM version NPM downloads
GitHub Sponsors donate button ThanksDev donate button Patreon donate button Liberapay donate button Buy Me A Coffee donate button Open Collective donate button crypto donate button PayPal donate button
Discord server badge Twitch community badge

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

Complete API Documentation.

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:

  1. Inside your package directory, run: npm install --save-dev valid-directory
  2. Then append && npx valid-directory to your test script inside your package.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

Deno

import pkg from 'https://unpkg.com/valid-directory@^4.9.0/edition-deno/index.ts'

Editions

This package is published with the following editions:

  • valid-directory/source/index.ts is TypeScript source code with Import for modules
  • valid-directory aliases valid-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
  • valid-directory/edition-types/index.d.ts is TypeScript compiled Types with Import for modules
  • valid-directory/edition-deno/index.ts is TypeScript source code made to be compatible with Deno

History

Discover the release history by heading on over to the HISTORY.md file.

Backers

Code

Discover how to contribute via the CONTRIBUTING.md file.

Authors

Maintainers

Contributors

Finances

GitHub Sponsors donate button ThanksDev donate button Patreon donate button Liberapay donate button Buy Me A Coffee donate button Open Collective donate button crypto donate button PayPal donate button

Sponsors

  • Andrew Nesbitt — Software engineer and researcher
  • Balsa — We're Balsa, and we're building tools for builders.
  • Codecov — Empower developers with tools to improve code quality and testing.
  • Poonacha Medappa
  • Rob Morris
  • Sentry — Real-time crash reporting for your web apps, mobile apps, and games.
  • Syntax — Syntax Podcast

Donors

License

Unless stated otherwise all works are:

and licensed under:

changelog

History

v4.9.0 2023 December 30

v4.8.0 2023 December 28

v4.7.0 2023 December 6

v4.6.0 2023 November 25

v4.5.0 2023 November 21

v4.4.0 2023 November 15

v4.3.0 2023 November 14

v4.2.0 2023 November 14

v4.1.0 2023 November 2

v4.0.0 2023 October 30

  • API now returns all paths as the third argument
  • Make the tests work on Windows
  • Swapped out readdir-cluster for recursive: true in readdir builtin to solve ERR_IPC_CHANNEL_CLOSED errors
    • This requires Node.js versions >= 18 for recursive support

v3.10.0 2023 October 30

v3.9.0 2021 July 31

v3.8.0 2021 July 28

v3.7.0 2021 July 28

v3.6.0 2021 June 14

v3.5.0 2020 October 29

v3.4.0 2020 September 5

v3.3.0 2020 September 4

v3.2.0 2020 August 31

  • Updated for TypeScript v4
    • Added tuple names for the return type

v3.1.0 2020 August 18

v3.0.0 2020 June 19

  • Converted from JavaScript to TypeScript
  • If you are using CommonJS, you must now do require('valid-directory').default
  • Updated dependencies, base files, and editions using boundation

v2.8.0 2020 August 4

v2.7.0 2020 July 23

v2.6.0 2020 June 25

v2.5.0 2020 June 21

v2.4.0 2020 June 11

v2.3.0 2020 June 10

v2.2.0 2020 May 22

v2.1.0 2020 May 21

v2.0.0 2020 May 21

  • Updated dependencies, base files, and editions using boundation
  • Minimum required node version changed from node: >=8 to node: >=10 to keep up with mandatory ecosystem changes

v1.6.0 2019 December 10

v1.5.0 2019 December 1

v1.4.0 2019 December 1

v1.3.0 2019 November 18

v1.2.0 2019 November 18

v1.1.1 2019 November 13

  • Fixed missing bin file

v1.1.0 2019 November 13

v1.0.0 2018 September 3

  • Initial working release