@phorbas/hamt

Persistent, hashed, opaque, replicable, binary key/content, addressable, storage

Usage no npm install needed!

<script type="module">
  import phorbasHamt from 'https://cdn.skypack.dev/@phorbas/hamt';
</script>

README

PHORBAS HAMT

PHORBAS HAMT is inspired by CouchDB's syncing, CRDTs, and immutable CAS. Using CBOR as a binary-friendly encoding standard, the hash array mapped TRIE is designed to address the principle of Replicable under the constrains of Opaque and Binary key/content.

  • PHORBAS Opaque handles the principle of Hashed, Opaque, and Addressable.
  • PHORBAS Store handles the principles of Persistent, Binary key/content, Addressable, and Store.

About PHORBAS

The PHORBAS project implements a persistent binary data storage scheme that accomodates opaque (encrypted) information. It is inspired by binary content addressable data storage, replication features of CouchDB, the opaque data storage of Tahoe-LAFS, the eventual consistency of CRDTs, and persistent Hash array mapped trie data structures.

Phorbas appears in in Greek mythology and is connected to "giving pasture" -- in this case, safe pasture to for data storage.

P - Persistent
H - Hashed
O - Opaque
R - Replicable
B - Binary key/content
A - Addressable
S - Store

Due to the opaque nature of the data storage, the storage is not queryable like a database. It is similar to IPFS with a less ambitious goal of being a pratical data storage scheme for data for embedding into other projects.

License

2-Clause BSD