isomorphic-lolcat
v0.3.1
Published
Lolcat gradient that can be used in browser or Node
Downloads
66
Maintainers
Readme
Isomorphic Lolcat
Small library based on lolcatjs that can be used in Node.js or Browser, to render gradient text.
Demo.
Installation
npm install isomorphic-lolcat
Usage
Node
const lolcat = require('isomorphic-lolcat');
Browser
<script src="https://cdn.jsdelivr.net/npm/isomorphic-lolcat"></script>
API
- 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.
Example
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,
}
License
Copyright (C) 2020 Jakub T. Jankiewicz [email protected]
Copyright (C) 2015 Robert Boloc [email protected]
Released with WTFPL License