Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sindresorhus/term-img

Display images in iTerm
https://github.com/sindresorhus/term-img

cli-utility image iterm2 nodejs npm-package terminal-image

Last synced: about 13 hours ago
JSON representation

Display images in iTerm

Awesome Lists containing this project

README

        

# term-img

> Display images in iTerm

You probably want the higher-level [`terminal-image`](https://github.com/sindresorhus/terminal-image) package for displaying your images.

![](screenshot.jpg)

Even [animated gifs](https://github.com/vdemedes/gifi)!

*Currently only supported on [iTerm >=3](https://www.iterm2.com/downloads.html).*

## Install

```sh
npm install term-img
```

## Usage

```js
import terminalImage from 'term-img';

function fallback() {
// Return something else when not supported
}

console.log(terminalImage('unicorn.jpg', {fallback}));
```

## API

### terminalImage(image, options?)

Get the image as a `string` that you can log manually.

#### image

Type: `string | Uint8Array`

File path to an image or an image as a buffer.

#### options

Type: `object`

##### width
##### height

Type: `'auto' | string | number`

The width and height are given as a number followed by a unit, or the word `'auto'`.

- `N`: N character cells.
- `Npx`: N pixels.
- `N%`: N percent of the session's width or height.
- `auto`: The image's inherent size will be used to determine an appropriate dimension.

##### preserveAspectRatio

Type: `boolean`\
Default: `true`

##### fallback

Type: `Function`\
Default: `() => throw new UnsupportedTerminalError()`

Enables you to do something else when the terminal doesn't support images.

## Related

- [term-img-cli](https://github.com/sindresorhus/term-img-cli) - CLI for this module
- [term-kitty-img](https://github.com/tbjgolden/term-kitty-img) - Similar package but for Kitty, Konsole, WezTerm