Create signed IPNI advertisements
npm install js-ipniCreate signed Advertisement records for the InterPlanetary Network Indexer (IPNI)
This library implements the Advertisement and EntryChunk chain structs according to the IPNI spec and its implementation in go-libipni.
HAMT entry records (used for efficiency when publishing very large datasets) are not implemented in this library, but they could be generated externally and passed into an Advertisement in place of the standard Entry chain. Use something like js-ipld-hashmap following the IPNI HAMT spec if you want to generate them.
Extended providers are not currently supported.
Sharing advertisement records with indexers is considered out of scope. If you want to do that, please follow the Advertisement Transfer spec.
todo, see tests and generate-ipni.ts
* Trustless Gateway - Provide CIDs using a HTTP endpoint
* IPNS Record (Naam) - Provide an IPNS record and specify the peers that provide its contents for reverse lookup
Based on the following reference implementations:
- ipni/go-libipni/ingest/schema/envelope.go
- multiformats/go-multicodec/code_table.go
- ipni/go-naam
- storacha/ipni