solace
Version:
Alternative to console log which automatically beautifies the output
71 lines (47 loc) • 2.21 kB
Markdown
> Alternative to the console log which automatically beautifies the output
Solace is particularly useful if you intend:
* to debug some data.
* to display some data for a CLI.
Solace has a specific support for string, boolean, number, date, regex, null, void, error, NaN, object, array and will deal with these types in a pleasant way.
By default, the output is expected to be stdout/stderr, but you can override this to implement more advanced logging.
The theme (machine, beautiful, outline) can be changed at runtime, which can be a handy option for the user of a CLI.
## Installation
```sh
$ npm install --save solace
```
## Usage
```js
import solaceCreator from 'solace';
const solace = solaceCreator({
//standardOut: process.stdout,
//standardErr: process.stderr,
//defaultTheme: 'beautiful'
});
const value = {
a: 12
b: ['jan', 'feb', 'mar'],
c: true,
d: new Date()
};
solace.log('Some data nicely arranged:');
solace.log(value, {title: 'title', theme: 'outline'});
```
* machine: Format the output in a compact manner easily readable by a machine.
* beautiful: Format the output in a beautiful manner.
* outline: Format the output with the main outlines. If the data is an array of objects, it may be displayed as a table.
Example of beautiful output:

Example of outline output:

MIT © [flarebyte](https://github.com/flarebyte)
[]: https://badge.fury.io/js/solace.svg
[]: https://npmjs.org/package/solace
[]: https://travis-ci.org/flarebyte/solace.svg?branch=master
[]: https://travis-ci.org/flarebyte/solace
[]: https://david-dm.org/flarebyte/solace.svg?theme=shields.io
[]: https://david-dm.org/flarebyte/solace
[]: https://coveralls.io/repos/github/flarebyte/solace/badge.svg?branch=master
[]: https://coveralls.io/github/flarebyte/solace?branch=master