JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5310
  • Score
    100M100P100Q128043F
  • License Apache-2.0

Enhanced Ansi Color Logging and Stringify for Node.js in type script

Package Exports

  • node-ansi-logger
  • node-ansi-logger/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (node-ansi-logger) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Node ansi logger and stringify

npm version npm downloads Node.js CI CodeQL codecov


AnsiLogger is a lightweight, customizable color logger for Node.js.

If you like this project and find it useful, please consider giving it a star on GitHub at https://github.com/Luligu/node-ansi-logger and sponsoring it.

Buy me a coffee

Features

  • Simple and intuitive API for data logging.
  • Customizable colors and apperance.
  • It is also possible to pass a top level logger (like Homebridge or Matter logger) and AnsiLogger will use it for output instead of console.
  • Includes also a fully customizable stringify funtions with colors.

Getting Started

Prerequisites

  • Node.js installed on your machine.
  • node-ansi-logger has no dependencies!

Installation

To get started with AnsiLogger in your package

npm install node-ansi-logger

Usage

Initializing AnsiLogger:

Create an instance of AnsiLogger.

import { AnsiLogger, AnsiLoggerParams, LogLevel } from 'node-ansi-logger';
const log = new AnsiLogger({logName: '<your name>'}); // Eventually other params in AnsiLoggerParams

To import the stringify functions

import { stringify, payloadStringify, colorStringify, mqttStringify, debugStringify } from 'node-ansi-logger';

Using the logger:

log.debug('Debug message...', ...parameters);
log.info('Info message...', ...parameters);
log.notice('Notice message...', ...parameters);
log.warn('Warning message', ...parameters);
log.error('Error message', ...parameters);
log.fatal('Fatal message', ...parameters);
log(LogLevel.WARN, 'Warning message', ...parameters)

Using the logger with colors inside the message:

log.debug(`Debug message ${YELLOW}with yellow part${db}`, ...);

Using the logger internal timer:

log.startTimer('Time sensitive code started')
log.stopTimer('Time sensitive code finished')

Using the stringify function:

stringify({...})
colorStringify({...})

Screenshot

Example Image

Contributing

Contributions to AnsiLogger are welcome.

License

This project is licensed under the MIT License - see the LICENSE file for details.