Files
modules/indexes-search/hyper-p2p-inverted-index
Raven ScottandCursor e43e2e83f1 Deepen indexes-search: APIs, tests, and category docs
Extend all eight index/search packages with practical helpers for app
development and fix semantic-vector getStats() to expose real metrics.

Per-module code:
- bloom-gossip: listKeys(), clear()
- inverted-index: searchAll(and|or), getDocTerms()
- fulltext-lite: search(and|or), suggest(prefix)
- trie-prefix: countPrefix(), autocomplete(limit)
- graph-index: removeEdge(), outDegree(), edgeCount()
- similarity-lsh: nearVector(), bucketCount()
- semantic-vector-index: getStats() delegates to getMetrics() + PROTOCOL export
- spatial-index: listLocalPoints(), pointCount(), protocol in getStats()

Tests added for new APIs across six packages; all indexes-search npm test
suites pass (8/8).

Docs:
- Rewrite indexes-search category README (module table, composition)
- Expand bloom-gossip and semantic-vector architecture notes
- modules/README.md: link indexes-search doc hub

Parent workspace docs/indexes-search/README.md and MODULE_DOC_PASS.md
updated separately (outside this git root).

Co-authored-by: Cursor <[email protected]>
2026-05-21 00:20:56 -04:00
..
2026-05-20 23:36:32 -04:00
2026-05-20 22:56:32 -04:00
2026-05-21 00:07:44 -04:00
2026-05-20 21:57:50 -04:00
2026-05-20 21:57:50 -04:00
2026-05-20 22:56:32 -04:00

hyper-p2p-inverted-index

Distributed inverted index with term-level gossip sync over Hyperswarm.

Category: indexes-search

Composes with: hyper-p2p-topic-channel

Protocol: inverted-index/v1

When to use

Peer-assisted document lookup where each node indexes local docs and merges remote term postings via gossip.

When not to use

Large-scale search requiring ranked full-text scoring (use hyper-p2p-fulltext-lite) or exact global consistency without merge semantics.

Quick start

const { HyperP2PInvertedIndex } = require('hyper-p2p-inverted-index')
const topic = process.argv[2]
const mod = new HyperP2PInvertedIndex({ topic })
await mod.ready()
mod.index('doc-1', ['pear', 'p2p'])
console.log(mod.search('pear'))
await mod.close()

Docs

Test

npm install && npm test