@vaporyjs/merkle-patricia-tree

This is an implementation of the modified merkle patricia tree as speficed in the Vapory's yellow paper.

Usage no npm install needed!

<script type="module">
  import vaporyjsMerklePatriciaTree from 'https://cdn.skypack.dev/@vaporyjs/merkle-patricia-tree';
</script>

README

SYNOPSIS

NPM Package Build Status Coverage Status Gitter or #vaporyjs on freenode

js-standard-style

This is an implementation of the modified merkle patricia tree as specified in the Vapory's yellow paper.

The modified Merkle Patricia tree (trie) provides a persistent data structure to map between arbitrary-length binary data (byte arrays). It is defined in terms of a mutable data structure to map between 256-bit binary fragments and arbitrary-length binary data. The core of the trie, and its sole requirement in terms of the protocol specification is to provide a single 32-byte value that identifies a given set of key-value pairs.
- Vapory's yellow paper

The only backing store supported is LevelDB through the levelup module.

INSTALL

npm install merkle-patricia-tree

USAGE

var Trie = require('merkle-patricia-tree'),
levelup = require('levelup'),
db = levelup('./testdb'),
trie = new Trie(db); 

trie.put('test', 'one', function () {
  trie.get('test', function (err, value) {
    if(value) console.log(value.toString())
  });
});

Also see this blog post.

API

./docs/

TESTING

npm test

LICENSE

MPL-2.0