JSPM

termstyle-plus

1.1.0
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 3
    • Score
      100M100P100Q29818F
    • License MIT

    The most comprehensive and powerful terminal styling library with extensive color support, gradients, animations, and special effects - TypeScript Edition

    Package Exports

    • termstyle-plus
    • termstyle-plus/dist/brighten.js

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (termstyle-plus) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    TermStyle Plus 🎨

    A powerful and feature-rich terminal styling library for Node.js with TypeScript support, extensive color options, and beautiful effects.

    📦 Installation

    npm install termstyle-plus

    🚀 Quick Start

    import style from 'termstyle-plus';
    
    // Basic colors
    console.log(style.red('This is red text'));
    console.log(style.blue('This is blue text'));
    console.log(style.green('This is green text'));
    
    // Background colors
    console.log(style.bgRed('Text with red background'));
    console.log(style.bgBlue('Text with blue background'));
    
    // Text styles
    console.log(style.bold('Bold text'));
    console.log(style.italic('Italic text'));
    console.log(style.underline('Underlined text'));
    
    // Special effects
    console.log(style.rainbow('Rainbow text'));
    console.log(style.neon('Neon text', 'blue'));
    
    // Box styles
    console.log(style.box('Hello World', 'double'));

    🎨 Available Features

    Basic Colors

    // Standard colors
    style.black('Black text')
    style.red('Red text')
    style.green('Green text')
    style.yellow('Yellow text')
    style.blue('Blue text')
    style.magenta('Magenta text')
    style.cyan('Cyan text')
    style.white('White text')
    
    // Bright variants
    style.brightRed('Bright red text')
    style.brightGreen('Bright green text')
    style.brightBlue('Bright blue text')
    // ... and more

    🌈 Extended Colors

    // Nature colors
    style.forest('Forest green')
    style.ocean('Ocean blue')
    style.sunset('Sunset orange')
    style.dawn('Dawn pink')
    style.earth('Earth brown')
    style.sand('Sand colored')
    
    // Precious stones
    style.emerald('Emerald')
    style.ruby('Ruby')
    style.sapphire('Sapphire')
    style.amethyst('Amethyst')
    style.pearl('Pearl')
    style.opal('Opal')
    style.garnet('Garnet')
    
    // Neon colors
    style.neonPink('Neon pink')
    style.neonBlue('Neon blue')
    style.neonGreen('Neon green')
    style.neonOrange('Neon orange')
    style.neonYellow('Neon yellow')
    style.neonPurple('Neon purple')
    
    // Pastel colors
    style.pastelPink('Pastel pink')
    style.pastelBlue('Pastel blue')
    style.pastelGreen('Pastel green')
    style.pastelYellow('Pastel yellow')
    style.pastelPurple('Pastel purple')
    style.pastelOrange('Pastel orange')

    🎯 Background Colors

    Add bg prefix to any color:

    style.bgRed('Red background')
    style.bgBlue('Blue background')
    style.bgNeonPink('Neon pink background')
    style.bgPastelBlue('Pastel blue background')

    ✨ Text Styles

    style.bold('Bold text')
    style.italic('Italic text')
    style.dim('Dim text')
    style.underline('Underlined text')
    style.blink('Blinking text')
    style.reverse('Reversed text')
    style.hidden('Hidden text')
    style.strikethrough('Strikethrough text')
    style.doubleUnderline('Double underlined text')
    style.overline('Overlined text')

    🎆 Special Effects

    Rainbow Text

    style.rainbow('Rainbow colored text');

    Neon Effect

    type NeonColor = 'blue' | 'pink' | 'green' | 'orange' | 'yellow' | 'purple';
    style.neon('Glowing text', 'blue');

    Gradient

    interface RGB {
      r: number;
      g: number;
      b: number;
    }
    
    style.gradient('Gradient text', 
      { r: 255, g: 0, b: 0 },    // Start color (red)
      { r: 0, g: 0, b: 255 }     // End color (blue)
    );

    Multi-gradient

    style.multiGradient('Multi-color gradient', [
      { r: 255, g: 0, b: 0 },    // Red
      { r: 0, g: 255, b: 0 },    // Green
      { r: 0, g: 0, b: 255 }     // Blue
    ]);

    📦 Box Styles

    type BoxStyle = 'single' | 'double' | 'round' | 'bold';
    
    style.box('Text in a box', 'single');
    style.box('Double bordered box', 'double');
    style.box('Round bordered box', 'round');
    style.box('Bold bordered box', 'bold');

    🎨 RGB & HSL Colors

    RGB Colors

    style.rgb(255, 100, 0)('Custom RGB color');
    style.bgRgb(100, 200, 255)('Custom RGB background');

    HSL Colors

    style.hsl(330, 100, 50)('Custom HSL color');
    style.bgHsl(200, 100, 50)('Custom HSL background');

    🔗 Combining Styles

    Chain multiple styles together:

    style.chain('bold', 'underline', 'red')('Bold, underlined, red text');
    
    // Combine with special effects
    style.box(style.rainbow('Rainbow in a box'), 'double');
    style.neon(style.box('Neon box', 'round'), 'blue');

    🎯 Example

    Here's a more complex example showing various features:

    import style from 'termstyle-plus';
    
    // Create a fancy header
    console.log(style.box(
      style.bold(style.neon('Welcome to My App', 'blue')),
      'double'
    ));
    
    // Show some status information
    console.log(style.green('✓ Connected to database'));
    console.log(style.yellow('⚠ Cache is outdated'));
    console.log(style.red('✗ API endpoint unreachable'));
    
    // Create a gradient title
    console.log(style.gradient(
      'System Status',
      { r: 255, g: 100, b: 0 },
      { r: 0, g: 100, b: 255 }
    ));
    
    // Show some metrics
    console.log(style.box(`
    ${style.bold('Memory Usage:')} ${style.green('45%')}
    ${style.bold('CPU Load:')} ${style.yellow('78%')}
    ${style.bold('Disk Space:')} ${style.red('92%')}
    `, 'round'));

    📄 License

    MIT