No description, website, or topics provided.
JavaScript
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
lib
README.md

README.md

ansimator

Plop some simple animations onto the terminal with ANSI codes!

Example:

var ansimate = require("ansimator")(process);

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 the same arguments as 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.