https://github.com/morulus/cine
Very simple frames animator
https://github.com/morulus/cine
Last synced: about 1 year ago
JSON representation
Very simple frames animator
- Host: GitHub
- URL: https://github.com/morulus/cine
- Owner: morulus
- License: mit
- Created: 2018-01-09T01:52:53.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-01-05T00:03:28.000Z (over 7 years ago)
- Last Synced: 2025-05-18T04:16:24.198Z (about 1 year ago)
- Language: JavaScript
- Size: 23.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
cine
==

Prepare function, which gives back spcified frames, considering frame duration.
```js
const counters = cine(['1', '2', '3', '4'], 250)
setInterval(() => console.log(counters()), 250);
```
It doesn't perform any output or events, but just gives a frame on request. Probably you should use something like setInterval to create animation.
Keep delay empty to disable internally timer.
Animated CLI
--
Usefull with [cli-update](https://github.com/sindresorhus/log-update) and [cli-spinners](https://github.com/sindresorhus/cli-spinners) for creating animated text in terminal output.
```js
const update = require('log-update');
const spinners = require('cli-spinners')
const cine = require('cine')
const animation = cine(
spinners.dots.frames,
spinners.dots.interval
)
setInterval(() => update(`Loading ${animation()}`))
```
API
--
`cine(frames : array, interval: number, onFinish : function)`
- `frames` Array of any values, but if frame is a function, it will be called, so you can pass another animation as one frame.
- `interval` Ms between frames. If you do not specify value, then frame will change only on request.
- `onFinish` End handler. Will be invoked at last frame.
License
--
MIT, 2018, Vladimir Morulus