date-fns
Shares rank 21 of 24 JavaScript libraries by recommenders
A battle-tested JavaScript date library with pure functions that works alongside Temporal. Critics argue native platform features now make such libraries unnecessary.
A battle-tested JavaScript date library with pure functions that works alongside Temporal. Critics argue native platform features now make such libraries unnecessary.
6 people gave an opinion
- recommend it
- 5
- criticize it
- 1
- approval share
- 83%
Recommended in 2 of 13 months
- November 2025: not recommended
- December 2025: recommended
- January 2026: not recommended
- February 2026: not recommended
- March 2026: recommended
- April 2026: not recommended
- May 2026: not recommended
- June 2026: not recommended
- July 2026: not recommended
- August 2026: not recommended
- September 2026: not recommended
- October 2026: not recommended
- November 2026: not recommended (month in progress)
Why it doesn’t carry the badge
- 5 people recommend itNeeds 10 or more, not met.
- 5 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 2 of 13 monthsNeeds 4 or more, not met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Battle-tested production library
“proven, battle-tested production libraries”
Comment from 29 Dec 2025 in “Karpathy on Programming” Pure functions for date data
“I'd clearly prefer a set of pure functions, into which I can pass data-only temporal objects, quite a bit like date-fns did it.”
Comment from 11 Mar 2026 in “Temporal: The 9-Year Journey to Fix Time in JavaScript” Works alongside Temporal for templated strings
“date-fns or luxon work fine alongside Temporal if you need templated strings”
Comment from 11 Mar 2026 in “Temporal: The 9-Year Journey to Fix Time in JavaScript” Great, though Temporal offers more
“date-fns is great but it can't give you that.”
Comment from 11 Mar 2026 in “Temporal: The 9-Year Journey to Fix Time in JavaScript”
What people warn about
Each mark is one comment
Native platform features make it unnecessary
“I would argue that it is unwarranted to use such libraries, because we can do better in Vanilla with platform features now.”
Comment from 19 May 2026 in “Mini Shai-Hulud Strikes Again: 314 npm Packages Compromised”
Other JavaScript libraries people recommend
The four most recommended other JavaScript libraries, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| jQuery | 111 | 48 | 70% | 12 | 16 yrs8 owners | Approved |
| Picknplace.js | 58 | 26 | 69% | 1 | — | — |
| Alpine.js | 50 | 16 | 76% | 11 | 1 yr4 owners | Approved |
| Effect (TypeScript library) | 38 | 16 | 70% | 10 | 2 yrs3 owners | Approved |
| date-fnsThis page | 5 | 1 | 83% | 2 | — | — |
What people said
5 of the 6 comments that mention it, newest first. Each links to the original comment.
“I would argue that it is unwarranted to use such libraries, because we can do better in Vanilla with platform features now.”
“date-fns or luxon work fine alongside Temporal if you need templated strings”
“date-fns is great but it can't give you that.”
“I'd clearly prefer a set of pure functions, into which I can pass data-only temporal objects, quite a bit like date-fns did it.”
“proven, battle-tested production libraries”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.