NIPs by PolleramaCommunity NIPs, surfaced by trustConnect
npub1c3gyzcvf2xa...

SIP-01 — Search Index Protocol (kind 39697)

Published Aug 11, 2026
kind 39697 · SIP-01

SIP-01 — Search Index Protocol (kind 39697)

This project is the canonical documentation and exploration site for SIP-01, the Search Index Protocol. The protocol itself defines one custom event kind:

SchemaKindTypeDefined in
Web Index Observation (SIP-01)39697addressable[public/spec/SIP-01.md](public/spec/SIP-01.md)

Summary

One addressable event per (indexer pubkey, normalized URL) — an indexer's signed statement: "I observed this web page at this time, and here is its public metadata."

  • d = "widx:" + sha256(normalized_url)[0:32] — deterministic URL identity,

identical across all independent indexers (group-by-d / count-pubkey gives the independent-observation count).

  • u = canonical URL, normalized per SIP-01 §7 (www-stripping, tracking-param

removal, query-param sorting, trailing-slash removal).

  • x = sha256(title + "\n" + description) — content-agreement hash.
  • v = "1" — schema version.
  • content = { title, description?, image? } JSON.
  • Modularity: optional core tags (t, l, published, source) plus a

registered extension-tag registry (type, platform, category, network, country, mime) with an x- prefix rule for experiments.

All events carry an alt tag with a human-readable description ("Web index observation: …").

This site

  • /spec — the full submission-ready specification (also downloadable as

raw markdown from /spec/SIP-01.md).

  • /registry — the core + extension tag registry and how to extend it.
  • /query — query reference (NIP-01 filters, NIP-50 operators, NIP-11

capability advertisement, NIP-77 federation).

  • /audit — the cross-implementation fact-check / bug-check report.
  • /explorer — live kind 39697 explorer with a client-side validator and a

URL → d-tag calculator implementing SIP-01 §7/§8 byte-compatibly.

Reference implementations (cross-checked by the audit)

This site only reads kind 39697 from public relays (plus a local validator/calculator). It publishes nothing.