upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md250
1 files changed, 134 insertions, 116 deletions
diff --git a/README.md b/README.md
index dd2e812..758045d 100644
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
30- [NIP-06: Basic key derivation from mnemonic seed phrase](06.md) 30- [NIP-06: Basic key derivation from mnemonic seed phrase](06.md)
31- [NIP-07: `window.nostr` capability for web browsers](07.md) 31- [NIP-07: `window.nostr` capability for web browsers](07.md)
32- [NIP-08: Handling Mentions](08.md) --- **unrecommended**: deprecated in favor of [NIP-27](27.md) 32- [NIP-08: Handling Mentions](08.md) --- **unrecommended**: deprecated in favor of [NIP-27](27.md)
33- [NIP-09: Event Deletion](09.md) 33- [NIP-09: Event Deletion Request](09.md)
34- [NIP-10: Conventions for clients' use of `e` and `p` tags in text events](10.md) 34- [NIP-10: Conventions for clients' use of `e` and `p` tags in text events](10.md)
35- [NIP-11: Relay Information Document](11.md) 35- [NIP-11: Relay Information Document](11.md)
36- [NIP-13: Proof of Work](13.md) 36- [NIP-13: Proof of Work](13.md)
@@ -73,10 +73,12 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
73- [NIP-57: Lightning Zaps](57.md) 73- [NIP-57: Lightning Zaps](57.md)
74- [NIP-58: Badges](58.md) 74- [NIP-58: Badges](58.md)
75- [NIP-59: Gift Wrap](59.md) 75- [NIP-59: Gift Wrap](59.md)
76- [NIP-64: Chess (PGN)](64.md)
76- [NIP-65: Relay List Metadata](65.md) 77- [NIP-65: Relay List Metadata](65.md)
77- [NIP-70: Protected Events](70.md) 78- [NIP-70: Protected Events](70.md)
78- [NIP-71: Video Events](71.md) 79- [NIP-71: Video Events](71.md)
79- [NIP-72: Moderated Communities](72.md) 80- [NIP-72: Moderated Communities](72.md)
81- [NIP-73: External Content IDs](73.md)
80- [NIP-75: Zap Goals](75.md) 82- [NIP-75: Zap Goals](75.md)
81- [NIP-78: Application-specific data](78.md) 83- [NIP-78: Application-specific data](78.md)
82- [NIP-84: Highlights](84.md) 84- [NIP-84: Highlights](84.md)
@@ -89,117 +91,133 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
89- [NIP-99: Classified Listings](99.md) 91- [NIP-99: Classified Listings](99.md)
90 92
91## Event Kinds 93## Event Kinds
92| kind | description | NIP | 94
93| ------------- | -------------------------- | ------------------------ | 95| kind | description | NIP |
94| `0` | User Metadata | [01](01.md) | 96| ------------- | ------------------------------- | -------------------------------------- |
95| `1` | Short Text Note | [01](01.md) | 97| `0` | User Metadata | [01](01.md) |
96| `2` | Recommend Relay | 01 (deprecated) | 98| `1` | Short Text Note | [01](01.md) |
97| `3` | Follows | [02](02.md) | 99| `2` | Recommend Relay | 01 (deprecated) |
98| `4` | Encrypted Direct Messages | [04](04.md) | 100| `3` | Follows | [02](02.md) |
99| `5` | Event Deletion | [09](09.md) | 101| `4` | Encrypted Direct Messages | [04](04.md) |
100| `6` | Repost | [18](18.md) | 102| `5` | Event Deletion Request | [09](09.md) |
101| `7` | Reaction | [25](25.md) | 103| `6` | Repost | [18](18.md) |
102| `8` | Badge Award | [58](58.md) | 104| `7` | Reaction | [25](25.md) |
103| `9` | Group Chat Message | [29](29.md) | 105| `8` | Badge Award | [58](58.md) |
104| `10` | Group Chat Threaded Reply | [29](29.md) | 106| `9` | Group Chat Message | [29](29.md) |
105| `11` | Group Thread | [29](29.md) | 107| `10` | Group Chat Threaded Reply | [29](29.md) |
106| `12` | Group Thread Reply | [29](29.md) | 108| `11` | Group Thread | [29](29.md) |
107| `13` | Seal | [59](59.md) | 109| `12` | Group Thread Reply | [29](29.md) |
108| `14` | Direct Message | [17](17.md) | 110| `13` | Seal | [59](59.md) |
109| `16` | Generic Repost | [18](18.md) | 111| `14` | Direct Message | [17](17.md) |
110| `40` | Channel Creation | [28](28.md) | 112| `16` | Generic Repost | [18](18.md) |
111| `41` | Channel Metadata | [28](28.md) | 113| `17` | Reaction to a website | [25](25.md) |
112| `42` | Channel Message | [28](28.md) | 114| `40` | Channel Creation | [28](28.md) |
113| `43` | Channel Hide Message | [28](28.md) | 115| `41` | Channel Metadata | [28](28.md) |
114| `44` | Channel Mute User | [28](28.md) | 116| `42` | Channel Message | [28](28.md) |
115| `818` | Merge Requests | [54](54.md) | 117| `43` | Channel Hide Message | [28](28.md) |
116| `1021` | Bid | [15](15.md) | 118| `44` | Channel Mute User | [28](28.md) |
117| `1022` | Bid confirmation | [15](15.md) | 119| `64` | Chess (PGN) | [64](64.md) |
118| `1040` | OpenTimestamps | [03](03.md) | 120| `818` | Merge Requests | [54](54.md) |
119| `1059` | Gift Wrap | [59](59.md) | 121| `1021` | Bid | [15](15.md) |
120| `1063` | File Metadata | [94](94.md) | 122| `1022` | Bid confirmation | [15](15.md) |
121| `1311` | Live Chat Message | [53](53.md) | 123| `1040` | OpenTimestamps | [03](03.md) |
122| `1617` | Patches | [34](34.md) | 124| `1059` | Gift Wrap | [59](59.md) |
123| `1621` | Issues | [34](34.md) | 125| `1063` | File Metadata | [94](94.md) |
124| `1622` | Replies | [34](34.md) | 126| `1311` | Live Chat Message | [53](53.md) |
125| `1630`-`1633` | Status | [34](34.md) | 127| `1617` | Patches | [34](34.md) |
126| `1971` | Problem Tracker | [nostrocket][nostrocket] | 128| `1621` | Issues | [34](34.md) |
127| `1984` | Reporting | [56](56.md) | 129| `1622` | Replies | [34](34.md) |
128| `1985` | Label | [32](32.md) | 130| `1630`-`1633` | Status | [34](34.md) |
129| `2003` | Torrent | [35](35.md) | 131| `1971` | Problem Tracker | [nostrocket][nostrocket] |
130| `2004` | Torrent Comment | [35](35.md) | 132| `1984` | Reporting | [56](56.md) |
131| `2022` | Coinjoin Pool | [joinstr][joinstr] | 133| `1985` | Label | [32](32.md) |
132| `4550` | Community Post Approval | [72](72.md) | 134| `1986` | Relay reviews | |
133| `5000`-`5999` | Job Request | [90](90.md) | 135| `1987` | AI Embeddings / Vector lists | [NKBIP-02] |
134| `6000`-`6999` | Job Result | [90](90.md) | 136| `2003` | Torrent | [35](35.md) |
135| `7000` | Job Feedback | [90](90.md) | 137| `2004` | Torrent Comment | [35](35.md) |
136| `9000`-`9030` | Group Control Events | [29](29.md) | 138| `2022` | Coinjoin Pool | [joinstr][joinstr] |
137| `9041` | Zap Goal | [75](75.md) | 139| `4550` | Community Post Approval | [72](72.md) |
138| `9734` | Zap Request | [57](57.md) | 140| `5000`-`5999` | Job Request | [90](90.md) |
139| `9735` | Zap | [57](57.md) | 141| `6000`-`6999` | Job Result | [90](90.md) |
140| `9802` | Highlights | [84](84.md) | 142| `7000` | Job Feedback | [90](90.md) |
141| `10000` | Mute list | [51](51.md) | 143| `9000`-`9030` | Group Control Events | [29](29.md) |
142| `10001` | Pin list | [51](51.md) | 144| `9041` | Zap Goal | [75](75.md) |
143| `10002` | Relay List Metadata | [65](65.md) | 145| `9467` | Tidal login | [Tidal-nostr] |
144| `10003` | Bookmark list | [51](51.md) | 146| `9734` | Zap Request | [57](57.md) |
145| `10004` | Communities list | [51](51.md) | 147| `9735` | Zap | [57](57.md) |
146| `10005` | Public chats list | [51](51.md) | 148| `9802` | Highlights | [84](84.md) |
147| `10006` | Blocked relays list | [51](51.md) | 149| `10000` | Mute list | [51](51.md) |
148| `10007` | Search relays list | [51](51.md) | 150| `10001` | Pin list | [51](51.md) |
149| `10009` | User groups | [51](51.md), [29](29.md) | 151| `10002` | Relay List Metadata | [65](65.md) |
150| `10015` | Interests list | [51](51.md) | 152| `10003` | Bookmark list | [51](51.md) |
151| `10030` | User emoji list | [51](51.md) | 153| `10004` | Communities list | [51](51.md) |
152| `10050` | Relay list to receive DMs | [17](17.md) | 154| `10005` | Public chats list | [51](51.md) |
153| `10096` | File storage server list | [96](96.md) | 155| `10006` | Blocked relays list | [51](51.md) |
154| `13194` | Wallet Info | [47](47.md) | 156| `10007` | Search relays list | [51](51.md) |
155| `21000` | Lightning Pub RPC | [Lightning.Pub][lnpub] | 157| `10009` | User groups | [51](51.md), [29](29.md) |
156| `22242` | Client Authentication | [42](42.md) | 158| `10015` | Interests list | [51](51.md) |
157| `23194` | Wallet Request | [47](47.md) | 159| `10030` | User emoji list | [51](51.md) |
158| `23195` | Wallet Response | [47](47.md) | 160| `10050` | Relay list to receive DMs | [51](51.md), [17](17.md) |
159| `24133` | Nostr Connect | [46](46.md) | 161| `10063` | User server list | [Blossom][blossom] |
160| `27235` | HTTP Auth | [98](98.md) | 162| `10096` | File storage server list | [96](96.md) |
161| `30000` | Follow sets | [51](51.md) | 163| `13194` | Wallet Info | [47](47.md) |
162| `30001` | Generic lists | [51](51.md) | 164| `21000` | Lightning Pub RPC | [Lightning.Pub][lnpub] |
163| `30002` | Relay sets | [51](51.md) | 165| `22242` | Client Authentication | [42](42.md) |
164| `30003` | Bookmark sets | [51](51.md) | 166| `23194` | Wallet Request | [47](47.md) |
165| `30004` | Curation sets | [51](51.md) | 167| `23195` | Wallet Response | [47](47.md) |
166| `30005` | Video sets | [51](51.md) | 168| `24133` | Nostr Connect | [46](46.md) |
167| `30008` | Profile Badges | [58](58.md) | 169| `24242` | Blobs stored on mediaservers | [Blossom][blossom] |
168| `30009` | Badge Definition | [58](58.md) | 170| `27235` | HTTP Auth | [98](98.md) |
169| `30015` | Interest sets | [51](51.md) | 171| `30000` | Follow sets | [51](51.md) |
170| `30017` | Create or update a stall | [15](15.md) | 172| `30001` | Generic lists | [51](51.md) |
171| `30018` | Create or update a product | [15](15.md) | 173| `30002` | Relay sets | [51](51.md) |
172| `30019` | Marketplace UI/UX | [15](15.md) | 174| `30003` | Bookmark sets | [51](51.md) |
173| `30020` | Product sold as an auction | [15](15.md) | 175| `30004` | Curation sets | [51](51.md) |
174| `30023` | Long-form Content | [23](23.md) | 176| `30005` | Video sets | [51](51.md) |
175| `30024` | Draft Long-form Content | [23](23.md) | 177| `30007` | Kind mute sets | [51](51.md) |
176| `30030` | Emoji sets | [51](51.md) | 178| `30008` | Profile Badges | [58](58.md) |
177| `30063` | Release artifact sets | [51](51.md) | 179| `30009` | Badge Definition | [58](58.md) |
178| `30078` | Application-specific Data | [78](78.md) | 180| `30015` | Interest sets | [51](51.md) |
179| `30311` | Live Event | [53](53.md) | 181| `30017` | Create or update a stall | [15](15.md) |
180| `30315` | User Statuses | [38](38.md) | 182| `30018` | Create or update a product | [15](15.md) |
181| `30402` | Classified Listing | [99](99.md) | 183| `30019` | Marketplace UI/UX | [15](15.md) |
182| `30403` | Draft Classified Listing | [99](99.md) | 184| `30020` | Product sold as an auction | [15](15.md) |
183| `30617` | Repository announcements | [34](34.md) | 185| `30023` | Long-form Content | [23](23.md) |
184| `30818` | Wiki article | [54](54.md) | 186| `30024` | Draft Long-form Content | [23](23.md) |
185| `30819` | Redirects | [54](54.md) | 187| `30030` | Emoji sets | [51](51.md) |
186| `31890` | Feed | [NUD: Custom Feeds](https://wikifreedia.xyz/cip-01/97c70a44366a6535c1) | 188| `30040` | Modular Article Header | [NKBIP-01] |
187| `31922` | Date-Based Calendar Event | [52](52.md) | 189| `30041` | Modular Article Content | [NKBIP-01] |
188| `31923` | Time-Based Calendar Event | [52](52.md) | 190| `30063` | Release artifact sets | [51](51.md) |
189| `31924` | Calendar | [52](52.md) | 191| `30078` | Application-specific Data | [78](78.md) |
190| `31925` | Calendar Event RSVP | [52](52.md) | 192| `30311` | Live Event | [53](53.md) |
191| `31989` | Handler recommendation | [89](89.md) | 193| `30315` | User Statuses | [38](38.md) |
192| `31990` | Handler information | [89](89.md) | 194| `30402` | Classified Listing | [99](99.md) |
193| `34235` | Video Event | [71](71.md) | 195| `30403` | Draft Classified Listing | [99](99.md) |
194| `34236` | Short-form Portrait Video Event | [71](71.md) | 196| `30617` | Repository announcements | [34](34.md) |
195| `34237` | Video View Event | [71](71.md) | 197| `30618` | Repository state announcements | [34](34.md) |
196| `34550` | Community Definition | [72](72.md) | 198| `30818` | Wiki article | [54](54.md) |
197| `39000-9` | Group metadata events | [29](29.md) | 199| `30819` | Redirects | [54](54.md) |
198 200| `31890` | Feed | [NUD: Custom Feeds][NUD: Custom Feeds] |
199[NUD: Custom Feeds]: https://wikifreedia.xyz/cip-01/97c70a44366a6535c1 201| `31922` | Date-Based Calendar Event | [52](52.md) |
202| `31923` | Time-Based Calendar Event | [52](52.md) |
203| `31924` | Calendar | [52](52.md) |
204| `31925` | Calendar Event RSVP | [52](52.md) |
205| `31989` | Handler recommendation | [89](89.md) |
206| `31990` | Handler information | [89](89.md) |
207| `34235` | Video Event | [71](71.md) |
208| `34236` | Short-form Portrait Video Event | [71](71.md) |
209| `34237` | Video View Event | [71](71.md) |
210| `34550` | Community Definition | [72](72.md) |
211| `39000-9` | Group metadata events | [29](29.md) |
212
213[NUD: Custom Feeds]: https://wikifreedia.xyz/cip-01/
200[nostrocket]: https://github.com/nostrocket/NIPS/blob/main/Problems.md 214[nostrocket]: https://github.com/nostrocket/NIPS/blob/main/Problems.md
201[lnpub]: https://github.com/shocknet/Lightning.Pub/blob/master/proto/autogenerated/client.md 215[lnpub]: https://github.com/shocknet/Lightning.Pub/blob/master/proto/autogenerated/client.md
202[joinstr]: https://gitlab.com/1440000bytes/joinstr/-/blob/main/NIP.md 216[joinstr]: https://gitlab.com/1440000bytes/joinstr/-/blob/main/NIP.md
217[NKBIP-01]: https://wikistr.com/nkbip-01
218[NKBIP-02]: https://wikistr.com/nkbip-02
219[blossom]: https://github.com/hzrd149/blossom
220[Tidal-nostr]: https://wikistr.com/tidal-nostr
203 221
204## Message types 222## Message types
205 223
@@ -236,15 +254,15 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
236| `-` | -- | -- | [70](70.md) | 254| `-` | -- | -- | [70](70.md) |
237| `g` | geohash | -- | [52](52.md) | 255| `g` | geohash | -- | [52](52.md) |
238| `h` | group id | -- | [29](29.md) | 256| `h` | group id | -- | [29](29.md) |
239| `i` | identity | proof | [39](39.md) | 257| `i` | external identity | proof, url hint | [39](39.md), [73](73.md) |
240| `k` | kind number (string) | -- | [18](18.md), [25](25.md), [72](72.md) | 258| `k` | kind number (string) | -- | [18](18.md), [25](25.md), [72](72.md) |
241| `l` | label, label namespace | -- | [32](32.md) | 259| `l` | label, label namespace | -- | [32](32.md) |
242| `L` | label namespace | -- | [32](32.md) | 260| `L` | label namespace | -- | [32](32.md) |
243| `m` | MIME type | -- | [94](94.md) | 261| `m` | MIME type | -- | [94](94.md) |
244| `q` | event id (hex) | relay URL | [18](18.md) | 262| `q` | event id (hex) | relay URL | [18](18.md) |
245| `r` | a reference (URL, etc) | petname | [24](24.md) | 263| `r` | a reference (URL, etc) | -- | [24](24.md), [25](25.md) |
246| `r` | relay url | marker | [65](65.md) | 264| `r` | relay url | marker | [65](65.md) |
247| `t` | hashtag | -- | | 265| `t` | hashtag | -- | [24](24.md), [34](34.md) |
248| `alt` | summary | -- | [31](31.md) | 266| `alt` | summary | -- | [31](31.md) |
249| `amount` | millisatoshis, stringified | -- | [57](57.md) | 267| `amount` | millisatoshis, stringified | -- | [57](57.md) |
250| `bolt11` | `bolt11` invoice | -- | [57](57.md) | 268| `bolt11` | `bolt11` invoice | -- | [57](57.md) |
@@ -258,11 +276,11 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
258| `encrypted` | -- | -- | [90](90.md) | 276| `encrypted` | -- | -- | [90](90.md) |
259| `expiration` | unix timestamp (string) | -- | [40](40.md) | 277| `expiration` | unix timestamp (string) | -- | [40](40.md) |
260| `goal` | event id (hex) | relay URL | [75](75.md) | 278| `goal` | event id (hex) | relay URL | [75](75.md) |
261| `image` | image URL | dimensions in pixels | [23](23.md), [58](58.md) | 279| `image` | image URL | dimensions in pixels | [23](23.md), [52](52.md), [58](58.md) |
262| `imeta` | inline metadata | -- | [92](92.md) | 280| `imeta` | inline metadata | -- | [92](92.md) |
263| `lnurl` | `bech32` encoded `lnurl` | -- | [57](57.md) | 281| `lnurl` | `bech32` encoded `lnurl` | -- | [57](57.md) |
264| `location` | location string | -- | [52](52.md), [99](99.md) | 282| `location` | location string | -- | [52](52.md), [99](99.md) |
265| `name` | name | -- | [34](34.md), [58](58.md) | 283| `name` | name | -- | [34](34.md), [58](58.md), [72](72.md) |
266| `nonce` | random | difficulty | [13](13.md) | 284| `nonce` | random | difficulty | [13](13.md) |
267| `preimage` | hash of `bolt11` invoice | -- | [57](57.md) | 285| `preimage` | hash of `bolt11` invoice | -- | [57](57.md) |
268| `price` | price | currency, frequency | [99](99.md) | 286| `price` | price | currency, frequency | [99](99.md) |
@@ -271,8 +289,8 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos
271| `relay` | relay url | -- | [42](42.md), [17](17.md) | 289| `relay` | relay url | -- | [42](42.md), [17](17.md) |
272| `relays` | relay list | -- | [57](57.md) | 290| `relays` | relay list | -- | [57](57.md) |
273| `server` | file storage server url | -- | [96](96.md) | 291| `server` | file storage server url | -- | [96](96.md) |
274| `subject` | subject | -- | [14](14.md), [17](17.md) | 292| `subject` | subject | -- | [14](14.md), [17](17.md), [34](34.md) |
275| `summary` | article summary | -- | [23](23.md) | 293| `summary` | summary | -- | [23](23.md), [52](52.md) |
276| `thumb` | badge thumbnail | dimensions in pixels | [58](58.md) | 294| `thumb` | badge thumbnail | dimensions in pixels | [58](58.md) |
277| `title` | article title | -- | [23](23.md) | 295| `title` | article title | -- | [23](23.md) |
278| `web` | webpage URL | -- | [34](34.md) | 296| `web` | webpage URL | -- | [34](34.md) |