perpetual-yas
Version:
Perform a task periodically
61 lines (45 loc) • 1.8 kB
Markdown
# perpetual-yas
Perform a task periodically
[](https://travis-ci.org/nshimiye/perpetual)
[](https://coveralls.io/github/nshimiye/perpetual?branch=master)
This is just another version of *setInterval*. yas is short for Yet Another SetInterval.
## use cases
* Periodically update a token bearer from a third party service.
* Test a REST API from time to time to make sure it's performance is as intact as it was when the API was created.
* Train a machine learning model from time to time.
* Create daily report on slack messages your team send to each other.
* most frequent topic.
* percentage of happy vs unhappy messages.
## Dependancies
* node v4.4.2 LTS
* npm 2.15.1
## Installation
```bash
npm install perpetual-yas --save
```
## Usage
Below is a set of step you will need to follow in order to successfully run a periodic task.
```javascript
// Initialize the task runner
let perpetual = require('perpetual-yas');
let runnerInstance = perpetual.initDefaultRunner();
// Use the runner to define a task
let args = [12345678]; // arguments
function printElapsed(initial) { // function to run when task starts
console.log('Time is ', Date.now() - initial);
}
let taskId = runnerInstance.defineTask(printElapsed, args);
// Use the runner to start task
runnerInstance.start(taskId);
// Use the runner to stop task
runnerInstance.stop(taskId);
```
## Tests
```bash
npm test
```
## Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style.
Add unit tests for any new or changed functionality. Lint and test your code.
## Release History
* 1.0.0-beta.1 Initial release