Skip to content

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

License

Notifications You must be signed in to change notification settings

Tactile-Taco/moderndash

 
 

Repository files navigation

ModernDash Logo

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

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


📓 Introduction

ModernDash is a modern and lightweight alternative to utility libraries like Lodash. It provides important functions while encouraging the use of native JS wherever possible.

ModernDash ignores trivial functions and instead focuses on the functions that you actually need.

// We don't need
Lodash.isArray(arr)
Lodash.compact(arr)

// When we have these native replacements
Array.isArray(arr)
arr.filter(Boolean)

💾 Installation

npm install moderndash

🚀 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 ]

🗃 FAQ

Why is X lodash function not included?

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

Check the contribute section!

About

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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 86.5%
  • Svelte 7.2%
  • JavaScript 5.3%
  • Other 1.0%