
Security News
Axios Maintainer Confirms Social Engineering Attack Behind npm Compromise
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.
shell-artist
Advanced tools
shell-artist is a package that provides a simplified logging API. It takes some of the best npm packages, ties them together and wraps them around to your favorite Web API i.e. console.
ShellArtist is a package that provides a simplified logging API. It takes some of the best npm packages, ties them together and wraps them around to your favorite Web API i.e. console.
# using npm
npm i shell-artist
# using yarn
yarn add shell-artist
# using pnpm
pnpm add shell-artist
import sa from 'shell-artist';
sa.log('Hello World');
Output
Hello World
config objectimport sa from 'shell-artist';
sa.log(' MY CLI APP ', {
bgColor: 'bgGreenBright', // https://github.com/chalk/chalk/tree/main#background-colors,
color: 'white', // https://github.com/chalk/chalk/tree/main#colors
modifier: 'bold', // https://github.com/chalk/chalk/tree/main#modifiers
emoji: 'rocket', // https://github.com/muan/emojilib/blob/main/dist/emoji-en-US.json,
box: {
title: 'package update',
borderColor: 'green',
style: 'double', // https://github.com/sindresorhus/boxen/tree/main#borderstyle (default - 'single')
padding: 2, // default - 1
margin: 2, // default - 1
dimBorder: true, // default - false
textAlignment: 'center', // default - 'center'
titleAlignment: 'left', // default - 'center'
},
});
Output
import sa from 'shell-artist';
sa.warn('CAUTION');
sa.error('FAILURE');
sa.info('INFO');
// with the config object
sa.success(' SUCCESS ', {
box: {
title: 'success',
borderColor: 'green',
},
modifier: 'bold',
emoji: 'rocket',
});
Output
import sa from 'shell-artist';
import { setTimeout as sleep } from 'node:timers/promises';
const spinner = sa.start('Installing dependencies...');
await sleep(3000);
sa.stop(spinner, 'All set!');
// with the config object
sa.stop(spinner, 'All set!', {
modifier: 'strikethrough',
});
// with prebuilt log levels
sa.stop(
spinner,
'Build ran successfully',
{
modifier: 'bold',
},
'success',
); // status = 'success' | 'error' | 'info' | 'warn'
sa.stop(spinner, 'Something went wrong', undefined, 'error');
Output
All set! All set! ✔ Build ran successfully ✖ Something went wrong (will be updated with gifs)
import sa from 'shell-artist';
// with array of colors
sa.applyGradient('This tool will help you write beautiful logs', [
'red',
'blue',
'green',
'yellow',
]);
// with prebuilt gradient
sa.applyGradient('This tool will help you write beautiful logs', 'rainbow'); // https://github.com/bokub/gradient-string#available-built-in-gradients
Output
import sa from 'shell-artist';
sa.animate('ANIMATED HEADING', 'neon'); // https://github.com/bokub/chalk-animation#available-animations
Output
import sa from 'shell-artist';
sa.createAscii('Sample ASCII TeXt', {
font: 'Ghost', // https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/figlet/index.d.ts (default - 'Standard')
horizontalLayout: 'full', // "default" | "full" | "fitted" | "controlled smushing" | "universal smushing" | undefined;
verticalLayout: 'fitted', // "default" | "full" | "fitted" | "controlled smushing" | "universal smushing" | undefined;
width: 80,
whitespaceBreak: true,
});
Output
FAQs
shell-artist is a package that provides a simplified logging API. It takes some of the best npm packages, ties them together and wraps them around to your favorite Web API i.e. console.
We found that shell-artist demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.