1 | # Motivation
|
2 |
|
3 | [nyks](https://github.com/131/nyks) is a modular nodejs utilities collection ([mout](https://github.com/mout/mout) completion for (mostly) nodejs patterns).
|
4 | Module are exported in standard commonJS module format and written in pure ES5/ES6 strict format. (no transpilation required nor used).
|
5 |
|
6 | Use browserify if you need nyks module in a browser environnement.
|
7 |
|
8 | [![Build Status](https://github.com/131/nyks/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/131/nyks/actions/workflows/test.yml)
|
9 | [![Coverage Status](https://coveralls.io/repos/github/131/nyks/badge.svg?branch=master)](https://coveralls.io/github/131/nyks?branch=master)
|
10 | [![Version](https://img.shields.io/npm/v/nyks.svg)](https://www.npmjs.com/package/nyks)
|
11 | [![License](https://img.shields.io/badge/license-MIT-blue.svg)](http://opensource.org/licenses/MIT)
|
12 | [![Code style](https://img.shields.io/badge/code%2fstyle-ivs-green.svg)](https://www.npmjs.com/package/eslint-plugin-ivs)
|
13 |
|
14 |
|
15 | ## Main goals
|
16 |
|
17 | - increase code reuse;
|
18 | - be clear (code should be clean/readable);
|
19 | - be easy to debug;
|
20 | - be easy to maintain;
|
21 | - follow best practices;
|
22 | - follow standards when possible;
|
23 | - **don't convert JavaScript into another language!**
|
24 | - be compatible with other frameworks;
|
25 | - be modular;
|
26 | - have unit tests for all modules;
|
27 |
|
28 | ## Async APIs
|
29 | - Find more details about async APIs (async.js thought ES7 async/await) in a [dedicated readme](./README-async.md)
|
30 |
|
31 |
|
32 | ## What shouldn't be here
|
33 |
|
34 | - Event system - pub/sub ; see [uclass/events](https://github.com/131/uclass) or [eventemitter-co](https://github.com/131/eventemitter-co)
|
35 | - Template engine;
|
36 | - Anything that isn't generic enough to be on a standard library;
|
37 | - Anything that could be a separate library and/or isn't a modular utility...
|
38 |
|
39 |
|
40 | ## API Documentation
|
41 |
|
42 | Online documentation can be found inside the [doc folder](./doc#top).
|
43 |
|
44 | ## License
|
45 | Released under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
|
46 |
|
47 | ## Credits / related
|
48 | * [131](https://github.com/131), author
|
49 | * [mout](https://github.com/mout/mout), design inspiration, main complementarity
|
50 | * [cnyks](https://github.com/131/cnyks), CLI runner & related tools
|
51 | * [Kalmani](https://github.com/Kalmani/) for documentation
|