Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/adoyle-h/utility-maker
Make your utilities library
https://github.com/adoyle-h/utility-maker
nodejs util utilities utility
Last synced: 9 days ago
JSON representation
Make your utilities library
- Host: GitHub
- URL: https://github.com/adoyle-h/utility-maker
- Owner: adoyle-h
- License: apache-2.0
- Created: 2016-11-30T11:37:19.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2023-10-26T00:31:11.000Z (about 1 year ago)
- Last Synced: 2024-10-13T06:42:59.870Z (25 days ago)
- Topics: nodejs, util, utilities, utility
- Language: JavaScript
- Size: 12.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# utility-maker
![Node Version][Node Version Image]
[![Npm Package Version][Npm Package Version Image]][Npm Package Version LINK]
[![License][License Image]][License LINK]
![NodeJS Package Dependencies][NodeJS Package Dependencies Link]
[![Build Status][Build Status Image]][Build Status Link]
[![Code Climate][Code Climate Image]][Code Climate Link]
[![Test Coverage][Test Coverage Image]][Test Coverage Link]Make your utilities library.
## TOC
- [Installation](#installation)
- [Quick Start](#quick-start)
- [Feature](#feature)
- [API](#api)
- [Versioning](#versioning)
- [Copyright and License](#copyright-and-license)`npm install --save utility-maker`
Mixin JSON:
```js
// util/index.js
const utilMaker = require('utility-maker');
const third = require('./third_party');
const overrides = require('./override');
const mixin = require('./mixin');const util = utilMaker()
.mixin(third)
.mixin(overrides, {override: true})
.mixin(mixin)
.done();module.exports = util;
```Or mixin files:
```js
// util/index.js
const utilMaker = require('utility-maker');
const baseDir = Path.resolve(__dirname);
const util = utilMaker()
.load([
'third_party',
'mixin',
], {baseDir})
.load([
'override',
], {baseDir, override: true})
.done();module.exports = util;
```Examples:
```js
// util/mixin.js
module.exports = {
version: 1,
test: () => console.log('test'),
};
```- Check duplicated keys when merge utils
- Allow to override util
- Separate utilities into many files for better code reading
- Chainable APIs. Very simple usage[TODO] The specifications of API, and details not mentioned in README, would be referenced at [API document][API].
The versioning follows the rules of SemVer 2.0.0.
**BUT**, anything may have **BREAKING CHANGES** at **ANY TIME** when major version is zero (0.y.z), which is for initial development and the public API should be considered unstable.
**When it is unstable, the version of installed package should be prefixed `~`.**
For more information on SemVer, please visit http://semver.org/.
Copyright (c) 2016 ADoyle. The project is licensed under the **Apache License Version 2.0**.
See the [LICENSE][] file for the specific language governing permissions and limitations under the License.
See the [NOTICE][] file distributed with this work for additional information regarding copyright ownership.
[LICENSE]: ./LICENSE
[NOTICE]: ./NOTICE
[API]: http://adoyle.me/utility-maker/[Node Version Image]: https://img.shields.io/node/v/utility-maker.svg
[Npm Package Version Image]: https://img.shields.io/npm/v/utility-maker.svg
[Npm Package Version LINK]: https://www.npmjs.com/package/utility-maker
[License Image]: https://img.shields.io/npm/l/utility-maker.svg
[License LINK]: https://github.com/adoyle-h/utility-maker/blob/master/LICENSE
[NodeJS Package Dependencies Link]: https://david-dm.org/adoyle-h/utility-maker.svg
[Build Status Image]: https://travis-ci.org/adoyle-h/utility-maker.svg?branch=master
[Build Status Link]: https://travis-ci.org/adoyle-h/utility-maker
[Code Climate Image]: https://codeclimate.com/github/adoyle-h/utility-maker/badges/gpa.svg
[Code Climate Link]: https://codeclimate.com/github/adoyle-h/utility-maker
[Test Coverage Image]: https://codeclimate.com/github/adoyle-h/utility-maker/badges/coverage.svg
[Test Coverage Link]: https://codeclimate.com/github/adoyle-h/utility-maker/coverage