Human-readable interval parser for Javascript.
Converts words written in English to numbers by using node-numbered.
Originally inspired by matthewmueller/date.
Uses
Human Interval is used by job scheduling libraries such as Agenda and Bree. They are a job schedulers for Node.js with cron expression syntax, human-friendly times, Dates, and more!
Example usage
const humanInterval = require('human-interval'); setTimeout(() => { // Do something! }, humanInterval('three minutes'));
More sophisticated examples
Human Interval understands all of the following examples:
humanInterval('minute'); humanInterval('one minute'); humanInterval('1.5 minutes'); humanInterval('3 days and 4 hours'); humanInterval('3 days, 4 hours and 36 seconds'); humanInterval('4 months, 3 days, 5 hours and forty-five seconds');
The full list
Units
Supports the following units in the plural and singular forms:
secondsminuteshoursdaysweeksmonths— assumes 30 daysyears— assumes 365 days
Wordy numbers
Supports numbers being written out in English words.
humanInterval('five minutes');
Hyphenated numbers
Supports hyphenated numbers.
humanInterval('twenty-five seconds');
Negative numbers
Supports negative numbers if the time starts with a - symbol immediately followed by a number.
humanInterval('-2 minutes');