1.0.0 • Published 3 years ago
ausgabe v1.0.0
ausgabe
Tiny logger with zero defaults.

Contents
Description
ausgabe is designed to output user relevant log messages to the console or to a custom stream. It's lightweight, customizable and perfect for tools that need simple, yet beautiful log messages.
Install
npm install ausgabeUsage
Basic
import { createLogger } from 'ausgabe'
const instance = createLogger({
info: {
color: 'blue',
badge: 'ℹ',
label: 'info',
},
})
instance.info('Hello world')Advanced
import figures from 'figures'
import { createLogger } from 'ausgabe'
const instance = createLogger(
{
info: {
color: 'blue',
badge: figures.info,
label: 'info',
},
warn: {
color: 'yellow',
badge: figures.warning,
label: 'warn',
stack: false,
},
error: {
color: 'red',
badge: figures.cross,
label: 'error',
},
},
{
indention: 7,
}
)
instance.info('Hello world')
instance.info('%s %s', 'Hello', 'world')
instance.warn(new Error('Logs error without the stack'))
instance.error(new Error('Logs error with the stack'))Nested
ausgabe supports nested logger instances.
import { createLogger } from 'ausgabe'
const instance = createLogger({
requests: createLogger({
get: {
color: 'magenta',
badge: '↗',
label: 'get',
},
post: {
color: 'magenta',
badge: '↗',
label: 'post',
},
}),
})
instance.requests.get('http://example.com')
instance.requests.post('http://example.com')Streams
ausgabe streams to process.stdout by default, but also allows custom writable streams.
import { Writable } from 'node:stream'
import { createLogger } from 'ausgabe'
const stream = new Writable({
write: (chunk, encoding, callback) => {
console.log(chunk.toString())
callback()
},
})
const instance = createLogger({
info: {
color: 'blue',
badge: 'ℹ',
label: 'info',
streams: [stream],
},
})
instance.info('Hello world')API
Usage
import { createLogger } from 'ausgabe'
const instance = createLogger({
info: {
color: 'blue',
badge: 'ℹ',
label: 'info',
},
})import { createLogger } from 'ausgabe'
const instance = createLogger(
{
info: {
color: 'blue',
badge: 'ℹ',
label: 'info',
},
},
{
indention: 6,
}
)Parameters
types{Object}Methods of the logger.color{?String}Color of the log. Must be supported by chalk. Defaults toblue.badge{?String}Icon to log along with the message. Using figures is recommended. Defaults toℹ.label{?String}Label to log along with the message. Defaults toinfo.stack{?Boolean}Determines if the stack of an error should be logged. Defaults totrue.streams{?Array}Writable streams to which the data is written. Defaults to[process.stdout].
options{?Object}Options.indention{?Integer}Aligns log messages with a custom indention.
Returns
{Function}({String},{?...*})ausgabe instance.
Instance API
Usage
instance.info('Hello world')
instance.info('%s %s', 'Hello', 'world')Parameters
message{String}Message containing zero or more substitution strings.substitutions{?...*}Data with which to replace substitution strings withinmessage.
Miscellaneous
Donate
I am working hard on continuously developing and maintaining my projects. Please consider making a donation to keep the project going strong and me motivated.
Related
- signale - Highly configurable logging utility