To parse human-written dates, time.lol currently uses a combination of the JavaScript libraries Day.js [1] and Sugar [2].
If Day.js can't determine a valid date from the given input, then Sugar is invoked to try even harder :) Seems to work well so far, but indeed it falls short with complex input (e.g. "The Tuesday after July 4th").