ansimator
Plop some simple animations onto the terminal with ANSI codes!
Example:
var charm = require("charm")(process)
var ansimate = require("ansimator")(charm);
var frames = [
[
" ▜▘ ",
" ▐ ☻ ",
" ▚▄█████▚ ",
" ▐███ ▐ ",
" ▜▛ ▐███ ",
" ▔▔ ▐ ▐ ",
" ▟ ▟ ",
" " ].join("\n"),
[
" ",
"*tink* ☻ ",
" ▖ ▄█████▚ ",
" ▛▀▀ ▐███ ▐ ",
" ▜▛ ▐███ ",
" ▔▔ ▐ ▐ ",
" ▟ ▟ ",
" " ].join("\n")
];
var metalworker = ansimate(frames).move(0, 2, function (metalworker) {
setInterval(metalworker.next, 800);
});
metalworker.charm.on("^C", function () {
metalworker.charm.display("reset");
metalworker.charm.destroy();
process.exit();
});
Install:
npm install ansimator
Usage:
ansimator(...)
This function takes a charm and returns an instance of ansimate
.
ansimate(frames)
Frames consists of a list of strings, where each string represents a single
unicode image.
ansimate(frames) Properties and Methods:
-
position(x, y)
: Position the top-left cursor position as in charm.
-
move(x, y, cb)
: Move the top-left cursor position as in charm. Takes a callback argument which fires after polling is complete.
-
next()
: Draws the next frame.
-
frames
: Feel free to modify the frames at runtime.
-
charm
: Access the associated instance of charm directly.
License:
MIT/X11.