Acho CLI Logger Skin

raw JSON →
2.0.1 verified Wed Apr 22 auth: no javascript

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.

error TypeError: acho is not a function
cause The `acho` peer dependency is missing or incorrectly imported, leading to `acho` being `undefined` or not a function when `require('acho')` is called.
fix
Install 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
cause Attempting to use `import` syntax (e.g., `import achoSkinCli from 'acho-skin-cli'`) in a Node.js environment configured for CommonJS, or in a browser without a build step.
fix
Replace 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().
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.
fix Ensure your project is configured for CommonJS or use `require()` syntax. If forced to use ESM, consider dynamic `import()` or a CJS wrapper.
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.
fix Run `npm install acho` in your project to satisfy the peer dependency. Ensure the `acho` version is compatible (currently `4.x`).
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.
fix Always pass the `acho-skin-cli` result to the `types` option when initializing the `acho` logger, as shown in the quickstart example.
npm install acho-skin-cli
yarn add acho-skin-cli
pnpm add acho-skin-cli

Demonstrates how to initialize the `acho` logger with `acho-skin-cli` and use its various CLI-specific log types.

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.');