Small library based on lolcatjs that can be used in Node.js or Browser, to render gradient text.
Demo.
npm install isomorphic-lolcatNode
const lolcat = require('isomorphic-lolcat');Browser
<script src="https://cdn.jsdelivr.net/npm/isomorphic-lolcat"></script>- lolcat.format((char: string, color: color) => string, input: string, (line: number) => void): string[]
Low lovel function, first argument is function that is called on each character.
First argument to function is single character second is object with red,
green and blue properties of type number.
Return array of string value is single lolcat string.
const styles = [];
let i = 20;
const o = rand(256);
function eachLine() {
i -= 1;
lolcat.options.seed = o + i;
}
function rand(max) {
return Math.floor(Math.random() * (max + 1));
}
// render Style console in Browser
console.log(lolcat.format(function(char, color) {
styles.push(`color: ${hex(color)}; background: black`);
return `%c${char}`;
}, 'Lorem Ipsum Dolor Sit Amet', eachLine), ...styles);- lolcat.rainbow((char: string, color: Color) => string, input: string, seed: number): string[]
Shortcut using above example that use default seed for each line:
const styles = [];
function format(char, color) {
styles.push(`color: ${hex(color)}; background: black`);
return `%c${char}`;
}
console.log(lolcat.rainbow(format, 'Lorem Ipsum Dolor Sit Amet').join('\n'), ...styles);- lolcat.options
options: {
// Seed of the rainbow, use the same for the same pattern
seed: 0,
// Spread of the rainbow
spread: 8.0,
// Frequency of the rainbow colors
freq: 0.3,
}Copyright (C) 2020 Jakub T. Jankiewicz jcubic@onet.pl
Copyright (C) 2015 Robert Boloc robertboloc@gmail.com
Released with WTFPL License
