Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/pmdartus/snapline

Unleash your screenshots stored in Chrome Devtool timeline files
https://github.com/pmdartus/snapline

Last synced: 9 days ago
JSON representation

Unleash your screenshots stored in Chrome Devtool timeline files

Awesome Lists containing this project

README

        

# snapline

[![Circle CI](https://circleci.com/gh/pmdartus/snapline.svg?style=svg)](https://circleci.com/gh/pmdartus/snapline)

> Unleash your screenshots stored in Chrome Devtool timeline files

![demo](demo.gif)

## Features

* Convert timeline to gif
* Extract screenshots save in a timeline into a folder

## Install

Before using snapline, please install `imageMagick` and ensure that your version of node is greater than `4.0`.

```shell
npm install -g snapline
```

## CLI usage

```shell
> snapline -h

Usage: snapline [options]

Options:
--help Show help [boolean]
-o, --output Output file name [string] [default: "timeline.gif"]
-f, --fps Number of frames per seconds [number] [default: "10"]
```

## Node usage

```js
const snapline = require('../src')
const timeline = require('./my-awesome-timeline.json')

snapline.toGif(timeline)
.then(gifPath => console.log(`The gif(t) is ready: ${gifPath}!`))
```

## API

### `snapline.toGif(timeline[, options])`

* `timeline` - The parsed JSON content of the timeline file
* `options.output` - path of the gif. default: `./timeline.gif`
* `options.fps` - Number of frames per seconds. default: `10`

Returns a `Promise` that resolves with the path of the created gif

### `snapline.toImages(timeline[, options])`

* `timeline` - The parsed JSON content of the timeline file
* `options.output` - folder path that will contains the screenshots. default: `./screenshots`
* `options.fps` - Number of frames per seconds. default: `10`

Returns a `Promise` that resolves with the path of the path of the created directory

## License

MIT. See `/LICENSE`

## Owner

Pierre-Marie Dartus - [@pmdartus](https://github.com/pmdartus)