@root/mkdirp

A minimal, zero-dependency mkdirp written in VanillaJS for node.

Usage no npm install needed!

<script type="module">
  import rootMkdirp from 'https://cdn.skypack.dev/@root/mkdirp';
</script>

README

mkdirp.js | A Root Project

A zero-dependency, Promise-friendly mkdirp written in VanillaJS for node.

Install

npm install --save @root/mkdirp

Usage

'use strict';

var mkdirp = require('@root/mkdirp')
mkdirp('/path/to/whatever', function (err) {
  if (err) { throw err; }
  console.log("directory now exists");
});

Usage (Promise)

'use strict';

var util = require('util');
var mkdirp = util.promisify(require('@root/mkdirp'));

mkdirp('/path/to/whatever').then(function () {
  console.info("directory now exists");
}).catch(function (err) {
  console.error(err);
});

Why not substack's mkdirp?

We're serious about light, zero-dependency JavaScript.

Fewer dependencies means code that's more easily audited, and less surface area for attacks.

substack's implementation is excellent and well-tested, but it's not Promise / await friendly and it depends on minimist, which isn't necessary because we don't need the commandline usage.