<commit_before>[![npm version](https://badge.fury.io/js/cron-emitter.svg)](http://badge.fury.io/js/cron-emitter)
[![Build Status](https://travis-ci.org/tfmalt/node-cron-emitter.svg?branch=master)](https://travis-ci.org/tfmalt/node-cron-emitter)
[![Code Climate](https://codeclimate.com/github/tfmalt/node-cron-emitter/badges/gpa.svg)](https://codeclimate.com/github/tfmalt/node-cron-emitter)
[![Test Coverage](https://codeclimate.com/github/tfmalt/node-cron-emitter/badges/coverage.svg)](https://codeclimate.com/github/tfmalt/node-cron-emitter)
[![Dependency Status](https://david-dm.org/tfmalt/node-cron-emitter.svg)](https://david-dm.org/tfmalt/node-cron-emitter)

# cron-emitter

This is an event emitter that uses crontab instructions to register the events
to be emitted at regular intervals. This module uses
[cron-parser](https://github.com/harrisiirak/cron-parser)
to parse the crontab instructions. See also
[node-cron](https://github.com/ncb000gt/node-cron) for a similar project with
a more traditional node.js callback approach.

The main difference between this Library and
[node-cron](https://github.com/ncb000gt/node-cron) is that this library aims
to implement the event listener pattern, to achieve capabilities found in the
[Observer Pattern](http://en.wikipedia.org/wiki/Observer_pattern) and the
[PUB/SUB Pattern](http://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern)

This enables you to write highly decoupled, functional and reactive code with
lower complexity per function than callback driven code. You can delegate
responsibility for dealing with events to as many different subsystems as we
want, all listening to the same event notifications.

## Table of contents
<commit_msg>minor update to phrasing in readme<commit_after>[![npm version](https://badge.fury.io/js/cron-emitter.svg)](http://badge.fury.io/js/cron-emitter)
[![Build Status](https://travis-ci.org/tfmalt/node-cron-emitter.svg?branch=master)](https://travis-ci.org/tfmalt/node-cron-emitter)
[![Code Climate](https://codeclimate.com/github/tfmalt/node-cron-emitter/badges/gpa.svg)](https://codeclimate.com/github/tfmalt/node-cron-emitter)
[![Test Coverage](https://codeclimate.com/github/tfmalt/node-cron-emitter/badges/coverage.svg)](https://codeclimate.com/github/tfmalt/node-cron-emitter)
[![Dependency Status](https://david-dm.org/tfmalt/node-cron-emitter.svg)](https://david-dm.org/tfmalt/node-cron-emitter)

# cron-emitter

This is an event emitter that uses crontab instructions to register events
to be emitted at regular intervals, or at certain specific times in the future. 
This module uses
[cron-parser](https://github.com/harrisiirak/cron-parser)
to parse the crontab instructions. See also
[node-cron](https://github.com/ncb000gt/node-cron) for a similar project with
a more traditional node.js callback approach.

The main difference between this Library and
[node-cron](https://github.com/ncb000gt/node-cron) is that this library aims
to implement the event listener pattern, to achieve capabilities found in the
[Observer Pattern](http://en.wikipedia.org/wiki/Observer_pattern) and the
[PUB/SUB Pattern](http://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern)

This enables you to write highly decoupled, functional and reactive code with
lower complexity per function than callback driven code. You can delegate
responsibility for dealing with events to as many different subsystems as we
want, all listening to the same event notifications.

## Table of contents

{'fraction_non_alphanumeric': 0.12743413516609392, 'fraction_numerical': 0.006300114547537228, 'mean_word_length': 5.420955882352941, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 24, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1930315', 'n_tokens_mistral': 1149, 'n_tokens_neox': 1087, 'n_words': 272}