Back to Explore

Yomguithereal/mnemonist

GitHub
1 watchersOpen source

Last release:

Mnemonist is a curated collection of data structures for JavaScript and TypeScript, aimed at being modular, performant, and easy to use with a consistent API. It includes common structures like heap, trie, and LRU caches, plus specialized options such as interval trees, KD-trees, suffix arrays, and probabilistic tools like Bloom filters.

Project status

  • The repository appears to be maintained, with a fresh set of updates on 2026-04-30 (v0.40.4, about 3.5 months before today), but historical activity is sporadic, with the prior update on 2025-02-19 (roughly 14 months earlier).
  • Update cadence looks bursty rather than continuous: most recent updates include a small, largely TypeScript-focused change (0.40.4), after a long gap, suggesting maintenance rather than a rapid release rhythm.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • 0.40.4

    Release v0.40.4 updates the TypeScript type declarations for `LRUMap.setpop` and `LRUCache.setpop`. The runtime JavaScript code does not appear to have changed in this diff, only the `.d.ts` typings and the package version/changelog.

    Breaking
  • 0.40.3

    Release v0.40.3 primarily updates the npm package metadata. The only functional metadata change is adding `sideEffects: false` to `package.json`, which can affect how bundlers treat the package during tree shaking.

    Breaking
  • 0.40.2

    Release v0.40.2 makes a TypeScript declaration fix for `BloomFilter.from`. The only functional change apparent from the diff is in the `.d.ts` file, aligning the type declaration with the expected static `from` factory usage.

  • 0.40.1

    Release v0.40.1 makes a targeted change to the TypeScript typings for SparseMap. The only functional change indicated by the diff is adding a missing constructor overload signature in sparse-map.d.ts, while package version metadata is bumped from 0.40.0 to 0.40.1.

  • 0.40.0

    v0.40.0 focuses on improving named export compatibility and TypeScript typings for Set operations. The provided diff mainly updates the TypeScript declaration file for the Set operations to accept ReadonlySet inputs, while also adjusting the intersection/union overload shape.

    Features
  • 0.40.0-rc1

    v0.40.0-rc1 adds an ESM entrypoint with named exports, and fixes missing CommonJS and TypeScript named exports for several Vector types, including PointerVector. It also resolves a CommonJS named export collision by renaming the Set export to set. The release notes cover these items, but the code diff shows additional packaging changes that may affect import paths beyond what is documented.

    BreakingFeatures
  • 0.39.8

    v0.39.8 focuses on small performance improvements to FixedDeque push and pop, and includes correctness fixes for some FixedDeque and CircularBuffer methods. The release notes also mention a TypeScript export fix for Float64Vector.

  • 0.39.7

    Version v0.39.7 makes small internal changes to LRU implementations and updates TypeScript declaration files. The provided release notes are empty, so the actual changes are only discoverable by inspecting the changelog and the code diff.

    Breaking
  • 0.39.6

    Release v0.39.6 primarily updates TypeScript type definitions for a few data structures (FibonacciHeap, StaticIntervalTree, Vector). No release notes were provided, but the changelog indicates these were type declaration fixes.

  • 0.39.5

    Release v0.39.5 updates the package version and adds TypeScript type declarations for the previously undocumented `utils/typed-arrays` module. The code diff indicates no runtime logic changes, only new `.d.ts` exports and version metadata updates.

    Features