Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/node-modules/mz-modules
Same as `mz`, but wrap modules in the world rather than core API.
https://github.com/node-modules/mz-modules
async-await mz promise
Last synced: 3 months ago
JSON representation
Same as `mz`, but wrap modules in the world rather than core API.
- Host: GitHub
- URL: https://github.com/node-modules/mz-modules
- Owner: node-modules
- License: other
- Created: 2017-02-08T04:39:28.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2023-11-30T15:56:25.000Z (about 1 year ago)
- Last Synced: 2024-09-24T02:36:09.764Z (4 months ago)
- Topics: async-await, mz, promise
- Language: JavaScript
- Homepage:
- Size: 19.5 KB
- Stars: 56
- Watchers: 14
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: History.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nodejs - mz-modules - Same as `mz`, but wrap modules in the world rather than core API. ![](https://img.shields.io/github/stars/node-modules/mz-modules.svg?style=social&label=Star) (Repository / Control flow)
README
# mz-modules
Same as [mz], but wrap many popular modules rather than core API.
[![NPM version][npm-image]][npm-url]
[![Test coverage][codecov-image]][codecov-url]
[![Known Vulnerabilities][snyk-image]][snyk-url]
[![npm download][download-image]][download-url][npm-image]: https://img.shields.io/npm/v/mz-modules.svg?style=flat-square
[npm-url]: https://npmjs.org/package/mz-modules
[codecov-image]: https://codecov.io/gh/node-modules/mz-modules/branch/master/graph/badge.svg
[codecov-url]: https://codecov.io/gh/node-modules/mz-modules
[snyk-image]: https://snyk.io/test/npm/mz-modules/badge.svg?style=flat-square
[snyk-url]: https://snyk.io/test/npm/mz-modules
[download-image]: https://img.shields.io/npm/dm/mz-modules.svg?style=flat-square
[download-url]: https://npmjs.org/package/mz-modulesNode require `>= 4.0.0`
## Usage
Install it
```bash
$ npm i mz-modules
```Require it
```js
const mkdirp = require('mz-modules/mkdirp');
```You can also require it from the main entry, but it will load other modules in mz-modules.
```js
const mkdirp = require('mz-modules').mkdirp;
```Use it
```js
// Using promise
mkdirp('/path/to/dir').then(() => console.log('done'));// Or if you are using async function
async function doSomething() {
await mkdirp('/path/to/dir');
}
```**Warning:** nextTick and setImmediate is little slower than callback, because promise queue is after nextTick.
## Modules
- `mz-modules/mkdirp` wrapped [mkdirp]
- `mz-modules/rimraf` wrapped [rimraf]
- `mz-modules/glob` wrapped [glob]
- `mz-modules/sleep` wrapped [ko-sleep]
- `mz-modules/nextTick` wrapped process.nextTick
- `mz-modules/setImmediate` wrapped setImmediate
- `mz-modules/pump` wrapped [pump]## Contribute
You can request adding module to mz-modules
1. [Create a issue](https://github.com/node-modules/mz-modules/issues) let us know why you want to add the module.
1. Add a module, named `xx`
- create `xx.js` that exports a function should return promise.
- require `xx.js` in `index.js`
- add a testcase for it in `test/xx.test.js`
- add xx.js to files in `package.json`
1. Create a pull request## License
[MIT](LICENSE)
[mz]: https://github.com/normalize/mz
[mkdirp]: https://github.com/substack/node-mkdirp
[rimraf]: https://github.com/isaacs/rimraf
[ko-sleep]: https://github.com/alsotang/ko-sleep
[glob]: https://github.com/isaacs/node-glob
[pump]: https://github.com/mafintosh/pump