JavaScript library for defining schedules, then calculating future or previous schedule occurrences. Works in Node and in the browser.