A Typescript-First utility library inspired by Lodash. Optimized for modern browsers & developer experience.

✅ ESM ✅ Fast & Lightweight ✅ Tree-shakable ✅ Typescript Strict Mode (no any)
✅ 100% Test Coverage ✅ Zero dependencies ✅ Hoverable Docs ✅ TS Decorators

📓 Documentation

Intro Code

💾 Installation

npm install moderndash

📋 Requirements

NodeJS: >=16.15 | Typescript: >=4.8

NodeJS 16-18: Enable the experimental-global-webcrypto flag to use crypto functions.
Works out of the box with NodeJS 19+

TypeScript: Enable the experimentalDecorators flag to use decorator functions.

🚀 Performance

ModernDash aims to outperform Lodash and deliver lightning-fast utility functions. Performance is not an afterthought, but a top priority. You can expect ModernDash to exceed or at least match the performance of Lodash in most benchmarks, ensuring that your project stays speedy and efficient.

[ Benchmark Results ]


Why is X lodash function not included?

ModernDash does not include any lodash functions that can be easily replaced by native javascript. It only includes the functions that you really need, and keeps the library as slim as possible. Please refer to You-Dont-Need-Lodash or youmightnotneed.com/lodash for native replacements.
If you still believe a function is missing, please open an issue.

Why no pipe utility functions?

The upcoming pipe operator in JavaScript will provide function composition, so the framework focuses on providing other useful utility functions that are not yet available.

The pipe operator can already be included via babel.

💌 Love & Thanks

To type-fest for providing some valuable types.

🧰 Contribute

  • Star the repo if you like it

  • Check the contributing section!