mkdirp
    Overview
    Alternatives
    Playground
    Insights & Analysis
    Issues
    Versions
    Documentation
    Find an Expert
    Dependencies
    Career Opportunities
    Code

mkdirp

Recursively mkdir, like `mkdir -p`

0.5.1  •  Published 4 years ago  •  by James Halliday  •  MIT License

Like mkdir -p, but in node.js!

build status

example

pow.js

var mkdirp = require('mkdirp');
    
mkdirp('/tmp/foo/bar/baz', function (err) {
    if (err) console.error(err)
    else console.log('pow!')
});

Output

pow!

And now /tmp/foo/bar/baz exists, huzzah!

methods

var mkdirp = require('mkdirp');

mkdirp(dir, opts, cb)

Create a new directory and any necessary subdirectories at dir with octal permission string opts.mode. If opts is a non-object, it will be treated as the opts.mode.

If opts.mode isn’t specified, it defaults to 0777 & (~process.umask()).

cb(err, made) fires with the error or the first directory made that had to be created, if any.

You can optionally pass in an alternate fs implementation by passing in opts.fs. Your implementation should have opts.fs.mkdir(path, mode, cb) and opts.fs.stat(path, cb).

mkdirp.sync(dir, opts)

Synchronously create a new directory and any necessary subdirectories at dir with octal permission string opts.mode. If opts is a non-object, it will be treated as the opts.mode.

If opts.mode isn’t specified, it defaults to 0777 & (~process.umask()).

Returns the first directory that had to be created, if any.

You can optionally pass in an alternate fs implementation by passing in opts.fs. Your implementation should have opts.fs.mkdirSync(path, mode) and opts.fs.statSync(path).

usage

This package also ships with a mkdirp command.

usage: mkdirp [DIR1,DIR2..] {OPTIONS}

  Create each supplied directory including any necessary parent directories that
  don't yet exist.
  
  If the directory already exists, do nothing.

OPTIONS are:

  -m, --mode   If a directory needs to be created, set the mode as an octal
               permission string.

install

With npm do:

npm install mkdirp

to get the library, or

npm install -g mkdirp

to get the command.

license

MIT

Dependencies

minimist  ·  tap  ·  mock-fs

Tags

mkdir
directory
Get a weekly digest of your favorite packages
We track new versions of your favorite packages, read the changelogs, and summarize them - so you dont have to
Just $5/month per user

Popularity

Weekly Downloads
12.6M
Stars
2.1K

Issues and PRs

Activity

Last ver 4 years ago
Created 9 years ago
Last commit 4 years ago
24 days between commits

Sustainability

9 contributors

Technology

Node version: 2.0.0
0 unpacked

Legal and Compliance

MIT License
OSI Approved
0 vulnerabilities

Top Experts

James Halliday
Maintainer, 61 commits, 9 merges
Works at bits.coop
isaacs
12 commits, 7 PRs
Works at npm, Inc.
Calvin Metcalf
2 commits, 2 PRs
Works at AppGeo
Myles Borins
2 commits, 3 PRs
Works at google
Dominic Tarr
1 commits, 1 PRs
Works at Protozoa
Simon Murtha-Smith
1 commits, 1 PRs