Acho CLI Logger Skin
raw JSON →acho-skin-cli is a dedicated plugin for the `acho` logging library, designed to provide a set of pre-defined log types specifically tailored for command-line interface (CLI) applications. Its primary function is to enhance the visual presentation of log messages within a terminal, offering consistent and clear output for various states like success, error, info, and warnings. The package is currently at version `2.0.1`, indicating a stable release. While no explicit release cadence is documented, its integration with `acho@4.x` as a peer dependency suggests a mature and maintained component within the `acho` ecosystem. Key differentiators include its singular focus on CLI-specific log styling and its lightweight integration as a types object directly into the `acho` logger, rather than being a standalone logger itself. It is intended to be used in conjunction with `acho` to achieve styled CLI output.
Common errors
error TypeError: acho is not a function ↓
acho using npm install acho. Verify that acho is correctly required before acho-skin-cli is used. error SyntaxError: Cannot use import statement outside a module ↓
import statements with const cliSkinTypes = require('acho-skin-cli');. If you need to use ESM, ensure your package.json has "type": "module" and all dependencies support ESM, or use dynamic import(). Warnings
gotcha This package is explicitly designed for CommonJS (CJS) environments using `require()`. Attempting to `import` it in an ES Module (ESM) context without proper transpilation or configuration will result in errors. ↓
gotcha The `acho` library is a peer dependency, meaning it must be installed separately in your project alongside `acho-skin-cli`. The package will not function without `acho` being present. ↓
gotcha The functionality of `acho-skin-cli` is entirely dependent on the `acho` logger. It provides only the 'skin' (log types), not the logging mechanism itself. Calling methods on the returned object directly (e.g., `require('acho-skin-cli').info()`) will not work. ↓
Install
npm install acho-skin-cli yarn add acho-skin-cli pnpm add acho-skin-cli Imports
- cliSkinTypes wrong
import cliSkinTypes from 'acho-skin-cli';correctconst cliSkinTypes = require('acho-skin-cli'); - AchoLoggerInitialization wrong
import acho from 'acho'; import cliSkinTypes from 'acho-skin-cli'; const log = acho({ types: cliSkinTypes });correctconst acho = require('acho'); const log = acho({ types: require('acho-skin-cli') });
Quickstart
const acho = require('acho');
// Initialize the acho logger with the CLI skin types
const log = acho({
types: require('acho-skin-cli')
});
// Use the CLI-specific log types
log.info('Starting CLI process...');
log.success('Operation completed successfully.');
log.warn('A potential issue was detected.');
log.error('An unrecoverable error occurred!');
log.debug('This is a debug message, visible in debug mode.');
// Example of custom log type usage, if supported by acho
// log.customType('Custom message with custom style.');