Mnemonist

Curated collection of data structures for the JavaScript language.


Mnemonist is a collection of data structures implemented in JavaScript.

It gathers classic data structures (think heap, trie etc.) as well as more exotic ones such as Burkhard-Keller trees etc.

It strives at being:

  • As performant as possible for a high-level language.
  • Completely modular (don’t need to import the whole library just to use a simple heap).
  • Simple & straightforward to use and consistent with JavaScript standard objects’ API.
  • Completely typed and comfortably usable with Typescript.

Installation

You can download the source directly from the Github repository or using npm:

npm install --save mnemonist

Documentation

Classics

Low-level & structures for very specific use cases

Information retrieval & Natural language processing

Space & time indexation

Metric space indexation

Probabilistic & succinct data structures

Utility classes


Note that this list does not include a Graph data structure whose implementation is usually far too complex for the scope of this library.

However, we advise the reader to take a look at the graphology library instead.

Don’t find the data structure you need? Maybe we can work it out together.

Contribution

Contributions are obviously welcome. Be sure to lint the code & add relevant unit tests.

# Installing
git clone git@github.com:Yomguithereal/mnemonist.git
cd mnemonist
npm install

# Linting
npm run lint

# Running the unit tests
npm test

Changelog

The full changelog for the library can be found here.

About

This documentation has been built using Jekyll, using the Papyrus theme by @hugoferreira.

License

MIT