UNPKG

perpetual-yas

Version:
61 lines (45 loc) 1.8 kB
# perpetual-yas Perform a task periodically [![Build Status](https://travis-ci.org/nshimiye/perpetual.svg?branch=master)](https://travis-ci.org/nshimiye/perpetual) [![Coverage Status](https://coveralls.io/repos/github/nshimiye/perpetual/badge.svg?branch=master)](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