NIP-54: Wiki
NIP-54 defines kind 30818 for wiki-style articles on Nostr. Multiple authors can publish entries for the same topic, so clients need ranking and trust heuristics instead of a single canonical page.
How It Works
Wiki articles are identified by a normalized d tag that represents the topic. Multiple people can publish entries with the same normalized topic, creating an open wiki without a central editor.
D Tag Normalization:
- Lowercase letters that have case variants
- Convert whitespace to hyphens
- Remove punctuation and symbols
- Collapse repeated hyphens and trim leading or trailing hyphens
- Preserve non-ASCII letters and numbers
That normalization rule matters for interoperability. If two clients normalize the same title differently, they will query different topics and fragment the article set.
Content Format
The canonical spec now uses Djot markup with two extra behaviors:
- Nostr links - References to profiles or events per NIP-21
- Wikilinks - Reference-style links without explicit targets resolve to normalized wiki article names
That change landed in PR #2242, which replaced the older Asciidoc-based text. The merged update also adds clearer examples for merge requests, redirects, and non-Latin d tag normalization.
Article Selection
When multiple versions of an article exist, clients can prioritize based on:
- Reactions (NIP-25) indicating community approval
- Relay lists (NIP-51) for source ranking
- Contact lists (NIP-02) forming recommendation networks
In practice, this means NIP-54 is not only a content format. It is also a client policy problem. Two clients can show different “best” articles for the same topic while both remain spec-compliant.
Collaborative Features
- Forking - Create derivative versions of articles
- Merge requests (kind 818) - Propose changes to existing articles
- Redirects (kind 30819) - Point old topics to new ones
- Deference markers - Indicate preferred article versions
Forks and deference markers let authors acknowledge better versions without deleting their own work. That matters in a network where old revisions can remain available across many relays.
Primary sources:
- NIP-54 Specification
- PR #2177: Internationalized d-tag normalization
- PR #2242: Switch from Asciidoc to Djot
Mentioned in:
See also: