Skip to content

Latest commit

 

History

History
41 lines (30 loc) · 1.46 KB

File metadata and controls

41 lines (30 loc) · 1.46 KB
description Modern alternatives to the mkdirp and make-dir packages for recursively creating directories in Node.js

Replacements for mkdirp / make-dir

Recursive fs.mkdir (native, since Node.js v10.12.0)

Node.js v10.12.0 and up supports the recursive option in the fs.mkdir function, which allows parent directories to be created automatically.

Example migration from mkdirp:

import { mkdirp } from 'mkdirp' // [!code --]
import { mkdir, mkdirSync } from 'node:fs' // [!code ++]
import { mkdir as mkdirAsync } from 'node:fs/promises' // [!code ++]

// Async
await mkdirp('/tmp/foo/bar/baz') // [!code --]
await mkdirAsync('/tmp/foo/bar/baz', { recursive: true }) // [!code ++]

// Sync
mkdirp.sync('/tmp/foo/bar/baz') // [!code --]
mkdirSync('/tmp/foo/bar/baz', { recursive: true }) // [!code ++]

Example migration from make-dir:

import { makeDirectory, makeDirectorySync } from 'make-dir' // [!code --]
import { mkdir, mkdirSync } from 'node:fs' // [!code ++]
import { mkdir as mkdirAsync } from 'node:fs/promises' // [!code ++]

// Async
await makeDirectory('/tmp/foo/bar/baz') // [!code --]
await mkdirAsync('/tmp/foo/bar/baz', { recursive: true }) // [!code ++]

// Sync
makeDirectorySync('/tmp/foo/bar/baz') // [!code --]
mkdirSync('/tmp/foo/bar/baz', { recursive: true }) // [!code ++]