If you're trying to figure out how to start and what to use, see the Getting Started Guide. To get a better sense of how the Hypercore Protocol modules fit together, here's a quick overview/categorization of the big ones.
Daemon and Core Modules
The Hyperspace Daemon wraps the low-level modules to provide a batteries-included toolset for Hypercore. Using Hyperspace is the easiest way to get started.
The modules wrapped by the daemon are:
- Hypercore - A secure append-only log data structure.
- Corestore - A Hypercore storage manager.
- Hyperswarm - A DHT for arranging connections.
Higher-Level Data Structures
Hypercore, on its own, is a very simple data structure — it's just a long list of blocks. As we'll see in these guides, a list of blocks is perfectly sufficient for many applications, such as video streaming. For other applications, you'll need more powerful data structures, like search trees.
To accomplish this, we use a pattern called embedded indexing. With embedded indexing, "pointers" are stored alongside data in Hypercore blocks, making it possible to quickly locate blocks of interest without downloading the complete log.
The higher-level data structure modules are: