LinuxCommandLibrary

emuto

Generate terminal-based user interfaces

SYNOPSIS

emuto [-h|--help] [-V|--version] [-w|--width WIDTH] [-s|--scale SCALE] [-p|--palette FILE] [-o|--output FILE] [IMAGE]

PARAMETERS

-h, --help
    Display help message and exit

-V, --version
    Print version information and exit

-w, --width WIDTH
    Set mosaic width in characters (default: 80)

-s, --scale SCALE
    Scale factor for emoji size (default: 1.0)

-p, --palette FILE
    Use custom emoji palette file

-o, --output FILE
    Save output as image file instead of stdout

DESCRIPTION

emuto is a lightweight command-line utility written in Haskell that converts any image file into a stunning mosaic made entirely of emojis. It analyzes the color palette of the input image and maps each pixel or block to the closest matching emoji from a predefined set, producing output suitable for terminal display or saving as an image file.

The tool excels at creating fun, shareable artwork from photos, with customizable dimensions and scaling for optimal results on different screen sizes. Emojis are selected based on RGB similarity, ensuring high-fidelity approximations even for complex images. It supports common formats like JPEG, PNG, and GIF via underlying libraries.

Ideal for terminal enthusiasts, social media, or creative projects, emuto runs efficiently on Linux systems with minimal dependencies once installed. Output renders best in terminals with Unicode support, 256-color or true color capabilities, and a dark background for vibrant contrast.

CAVEATS

Requires Unicode and color-supporting terminal; best on dark backgrounds. Haskell runtime needed. Large images may be slow without optimization.

INSTALLATION

Install via cabal install emuto or Stack. Available from Hackage or GitHub releases.

PALETTE

Default palette uses ~100 emojis; custom JSON files allow extensions with skin tones and flags.

HISTORY

Developed by Felix Springer in 2017 as an open-source Haskell project on GitHub. Inspired by ASCII art tools, it gained popularity for emoji-based image art. Actively maintained with palette updates.

SEE ALSO

jp2a(1), aview(1), caca(1), aacgain(1)

Copied to clipboard