1.0.2 • Published 2 years ago

json-chalkify v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago
       _  _____  ____  _   _    _____ _           _ _    _  __       
      | |/ ____|/ __ \| \ | |  / ____| |         | | |  (_)/ _|      
      | | (___ | |  | |  \| | | |    | |__   __ _| | | ___| |_ _   _ 
  _   | |\___ \| |  | | . ` | | |    | '_ \ / _` | | |/ / |  _| | | |
 | |__| |____) | |__| | |\  | | |____| | | | (_| | |   <| | | | |_| |
  \____/|_____/ \____/|_| \_|  \_____|_| |_|\__,_|_|_|\_\_|_|  \__, |
                                                                __/ |
                                                               |___/ 

example

JSON Chalkify

This package is a very simple, 1 dependancy, extension to the chalk package.

It is designed to format and display javascript objects and JSON in the terminal.

Install

  npm install json-chalkify

Usage

import JSONChalkify from 'json-chalkify'

const chalkify = new JSONChalkify().chalkify

console.log(chalkify({myThing: 42}))

Default values

json-chalkify has these values by default, but all of them are configurable, explained in the configuration section.

ResourceTypeDefault
propertyColorchalk colorchalk.blue
colonColorchalk colorchalk.blue
bracketColorchalk colorchalk.white
booleanColorchalk colorchalk.green
stringColorchalk colorchalk.yellow
numberColorchalk colorchalk.red
undefinedColorchalk colorchalk.gray
nullColorchalk colorchalk.gray
functionColorchalk colorchalk.white
symbolColorchalk colorchalk.cyan
bigintColorchalk colorchalk.blueBright
emptyLinesBeforeint1
emptyLinesAfterint0
spacingCharstring" "
offsetOfSpacingCharsint0
numOfSpacingCharsint2
maxLengthBeforeTruncateint100
afterTruncateStringstring" ..."

Configuration

Creating a chalkify instance with a custom configuration is quite simple. Just pass in an object of values which should deviate from the default.

import chalk from 'chalk'
import JSONChalkify from 'json-chalkify'

const chalkifyConfig = {
  propertyColor: chalk.red
}

const chalkify = new JSONChalkify(chalkifyConfig).chalkify

Configuration Examples

Since the chalkify instance is simply expecting an object of values deviating from the default, you're free to be creative in how you choose to implement this into your project.

For example you could have different color schemes for different node enviornments to see at a glance which logs belong to which env.

import chalk from 'chalk'
import JSONChalkify from 'json-chalkify'

const devChalkifyConfig = {
  propertyColor: chalk.red
}

const stagingChalkifyConfig = {// determine which to use based on process.env.NODE_ENV
  propertyColor: chalk.green
}

const devChalkify = new JSONChalkify(devChalkifyConfig).chalkify
const stagingChalkify = new JSONChalkify(stagingChalkifyConfig).chalkify