You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: refresh benchmark tables; make scenario claims number-driven
Tables regenerated from the current benchmark.js/benchmark2.js runs.
The generator now derives the win/concession wording from the actual
scenario results instead of hardcoding 'Day.js is faster in Time
Operations' — which the current numbers no longer support (kk-date is
fastest in every scenario, including Time Operations).
A blazing-fast JavaScript date library with intelligent caching, automatic DST detection, and zero-config timezone handling. Perfect for high-performance applications, real-time systems, and data-intensive operations where speed and accuracy matter most.
8
8
9
9
## 🌟 Why Choose kk-date?
10
10
11
11
### Performance & Efficiency *(measured on Node.js 26; reproduced by CI, results vary)*
12
12
<!-- BENCH:readme-why -->
13
-
-**⚡ Lightning Fast** - Over 40x faster timezone operations than Day.js
14
-
-**🚀 ~89% Faster Overall** - Wins most scenarios vs Moment.js, Day.js, and Luxon (Day.js is faster in isolated "Time Operations")
13
+
-**⚡ Lightning Fast** - Over 30x faster timezone operations than Day.js
14
+
-**🚀 ~96% Faster Overall** - Fastest in every scenario vs Moment.js, Day.js, and Luxon
> **Note:** All performance figures in this README come from our own benchmark suite on Node.js 26 and are **reproduced by CI on every PR** (the "Performance Benchmarks" job runs `benchmark.js` + `benchmark2.js` and uploads the results). They are **not guarantees** — results vary by workload, hardware, Node version, and caching. Reproduce locally with `node benchmark.js` / `node benchmark2.js`. kk-date wins most scenarios but not all (e.g. Day.js is faster in isolated "Time Operations").
418
+
> **Note:** All performance figures in this README come from our own benchmark suite on Node.js 26 and are **reproduced by CI on every PR** (the "Performance Benchmarks" job runs `benchmark.js` + `benchmark2.js` and uploads the results). They are **not guarantees** — results vary by workload, hardware, Node version, and caching. Reproduce locally with `node benchmark.js` / `node benchmark2.js`.
|**Date Creation & Formatting**|**159ms**|1207ms|822ms|1055ms|**~417% faster** than Day.js |
388
-
|**Time Operations**|**460ms**|1367ms|612ms|2827ms|**~33% faster** than Day.js |
389
-
|**Timezone Conversions**|**445ms**|2925ms|18772ms|4312ms|**~557% faster** than Moment |
390
-
|**Complex Operations**|**368ms**|2621ms|1398ms|3161ms|**~280% faster** than Day.js |
391
-
|**Overall**|**1.43s**|8.12s|21.60s|11.36s|**~15.1x faster** than Day.js |
387
+
|**Date Creation & Formatting**|**286ms**|2109ms|1336ms|1976ms|**~368% faster** than Day.js |
388
+
|**Time Operations**|**397ms**|2448ms|1103ms|4704ms|**~178% faster** than Day.js |
389
+
|**Timezone Conversions**|**942ms**|5595ms|35194ms|8545ms|**~494% faster** than Moment |
390
+
|**Complex Operations**|**541ms**|4422ms|2556ms|5611ms|**~373% faster** than Day.js |
391
+
|**Overall**|**2.17s**|14.57s|40.19s|20.84s|**~18.6x faster** than Day.js |
392
392
<!-- /BENCH:perf-seq -->
393
393
394
394
#### Key Performance Metrics
395
395
396
396
*Measured in our benchmark suite on Node.js 26 and reproduced by CI on every PR (the "Performance Benchmarks" job). These are not guarantees — results vary by workload, hardware, and Node version. Reproduce them with `node benchmark.js` / `node benchmark2.js`.*
397
397
398
398
<!-- BENCH:perf-metrics -->
399
-
-**~89% faster** than the average of competing libraries (comprehensive benchmark)
400
-
-**up to ~98% faster** in timezone operations
401
-
-**~59% faster** with caching enabled
402
-
-**kk-date does not win every scenario**— Day.js is faster in isolated "Time Operations"
399
+
-**~96% faster** than the average of competing libraries (comprehensive benchmark)
400
+
-**up to ~97% faster** in timezone operations
401
+
-**~24% faster** with caching enabled
402
+
-**kk-date wins every scenario** in the current benchmark run
403
403
-**Net memory delta is GC-dependent** (often negative for several libraries); stability comes from object pooling + LRU eviction
404
404
-**Near-100% cache hit rate** for repeated operations
`- **⚡ Lightning Fast** - Over ${d.tzXfloor}x faster timezone operations than Day.js`,
152
-
`- **🚀 ~${d.avgFaster}% Faster Overall** - Wins most scenarios vs Moment.js, Day.js, and Luxon (Day.js is faster in isolated "Time Operations")`,
155
+
d.lostScenarios.length
156
+
? `- **🚀 ~${d.avgFaster}% Faster Overall** - Wins most scenarios vs Moment.js, Day.js, and Luxon (slower in isolated "${d.lostScenarios.join('", "')}")`
157
+
: `- **🚀 ~${d.avgFaster}% Faster Overall** - Fastest in every scenario vs Moment.js, Day.js, and Luxon`,
0 commit comments