@decaded/nyalog

1.0.2 • Public • Published

NyaLog

A lightweight, customizable logging package for console output with multiple timestamp formats and color-coded log levels.

npm (scoped) npm bundle size (scoped) npm GitHub GitHub Actions


Installation

You can install NyaLog via npm:

npm install @decaded/nyalog

Usage

First, require the package in your application:

const Logger = require('nyalog');

Then, initialize it in one of two ways:

Standard:

const logger = new Logger();

With a timestamp format:

const logger = new Logger({ timestampFormat: 'ISO' });

For supported timestamp formats, refer to the table below.

Logging Messages

You can log messages of different types:

Log Type Usage Example Color
info logger.consoleLog('info', 'This is an informational message.'); Cyan
warn logger.consoleLog('warn', 'This is a warning message.'); Yellow
error logger.consoleLog('error', 'This is an error message.', 'Additional error details.'); Red
ok logger.consoleLog('ok', 'Operation completed successfully!'); Green
debug logger.consoleLog('debug', 'Debugging information here...'); Bold Magenta
stop logger.consoleLog('stop', 'This is a stop message.'); Bold Red
start logger.consoleLog('start', 'This is a start message.'); Bold Green

In case of a spelling error in log type, detailed path to the problem will be provided:

logger.consoleLog('eror', 'This is wrongly typed value.');

// 09-22-2024 08:10:18 || [ UNDEFINED LOG TYPE ] "eror"
//                         Location: at function <anonymous> (/home/decaded/Projects/NyaLog/example/index.js:17:8);

NOTE: NyaLog automatically provides detailed error paths for undefined log types.

consoleLog Parameters

  • logType (string): Specifies the type of log (e.g., 'info', 'error', etc.).
  • message (string): The primary message to be logged.
  • extraDetails (string): An optional secondary argument specifically for the 'error' log type.

Supported Timestamp Formats

Name Format
European DD-MM-YYYY HH:mm:ss
American MM-DD-YYYY HH:mm:ss
ISO YYYY-MM-DD HH:mm:ss

You can specify the desired format during initialization:

const logger = new Logger({ timestampFormat: 'ISO' });

NOTE: This is case insensitive. European is used by default when no value is provided.

Contributing

Contributions are welcome! Please open an issue or submit a pull request on the GitHub repository.

License

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


Like what I do?

If you find this project helpful or fun to use, consider supporting me on Ko-fi! Your support helps me keep creating and improving.

ko-fi

Package Sidebar

Install

npm i @decaded/nyalog

Weekly Downloads

84

Version

1.0.2

License

MIT

Unpacked Size

26.3 kB

Total Files

20

Last publish

Collaborators

  • decaded