diff options
| -rw-r--r-- | 24.md | 32 | ||||
| -rw-r--r-- | 38.md | 2 | ||||
| -rw-r--r-- | README.md | 6 |
3 files changed, 37 insertions, 3 deletions
| @@ -0,0 +1,32 @@ | |||
| 1 | NIP-24 | ||
| 2 | ====== | ||
| 3 | |||
| 4 | Extra metadata fields and tags | ||
| 5 | ------------------------------ | ||
| 6 | |||
| 7 | `draft` `optional` `author:fiatjaf` | ||
| 8 | |||
| 9 | This NIP defines extra optional fields added to events. | ||
| 10 | |||
| 11 | kind 0 | ||
| 12 | ====== | ||
| 13 | |||
| 14 | These are extra fields not specified in NIP-01 that may be present in the stringified JSON of metadata events: | ||
| 15 | |||
| 16 | - `display_name`: a bigger name with richer characters than `name`. Implementations should fallback to `name` when this is not available. | ||
| 17 | - `website`: a web URL related in any way to the event author. | ||
| 18 | - `banner`: an URL to a wide (~1024x768) picture to be optionally displayed in the background of a profile screen. | ||
| 19 | |||
| 20 | ### Deprecated fields | ||
| 21 | |||
| 22 | These are fields that should be ignored or removed when found in the wild: | ||
| 23 | |||
| 24 | - `displayName`: use `display_name` instead. | ||
| 25 | - `username`: use `name` instead. | ||
| 26 | |||
| 27 | tags | ||
| 28 | ==== | ||
| 29 | |||
| 30 | These tags may be present in multiple event kinds. Whenever a different meaning is not specified by some more specific NIP, they have the following meanings: | ||
| 31 | |||
| 32 | - `r`: a web URL the event is referring to in some way | ||
| @@ -57,3 +57,5 @@ Clients MAY display this next to the username on posts or profiles to provide li | |||
| 57 | * Nostr music streaming services that update your music status when you're listening | 57 | * Nostr music streaming services that update your music status when you're listening |
| 58 | * Podcasting apps that update your music status when you're listening to a podcast, with a link for others to listen as well | 58 | * Podcasting apps that update your music status when you're listening to a podcast, with a link for others to listen as well |
| 59 | * Clients can use the system media player to update playing music status | 59 | * Clients can use the system media player to update playing music status |
| 60 | |||
| 61 | The `content` MAY include emoji(s), or [NIP-30](30.md) custom emoji(s). If the `content` is an empty string then the client should clear the status. | ||
| @@ -161,12 +161,13 @@ Please update these lists when proposing NIPs introducing new event kinds. | |||
| 161 | | `p` | pubkey (hex) | relay URL, petname | [01](01.md), [02](02.md) | | 161 | | `p` | pubkey (hex) | relay URL, petname | [01](01.md), [02](02.md) | |
| 162 | | `a` | coordinates to an event | relay URL | [01](01.md) | | 162 | | `a` | coordinates to an event | relay URL | [01](01.md) | |
| 163 | | `d` | identifier | -- | [01](01.md) | | 163 | | `d` | identifier | -- | [01](01.md) | |
| 164 | | `alt` | Alt tag | -- | [31](31.md) | | 164 | | `alt` | summary | -- | [31](31.md) | |
| 165 | | `g` | geohash | -- | [52](52.md) | | 165 | | `g` | geohash | -- | [52](52.md) | |
| 166 | | `i` | identity | proof | [39](39.md) | | 166 | | `i` | identity | proof | [39](39.md) | |
| 167 | | `k` | kind number (string) | -- | [18](18.md), [72](72.md) | | 167 | | `k` | kind number (string) | -- | [18](18.md), [72](72.md) | |
| 168 | | `l` | label, label namespace | annotations | [32](32.md) | | 168 | | `l` | label, label namespace | annotations | [32](32.md) | |
| 169 | | `L` | label namespace | -- | [32](32.md) | | 169 | | `L` | label namespace | -- | [32](32.md) | |
| 170 | | `m` | MIME type | -- | [94](94.md) | | ||
| 170 | | `r` | a reference (URL, etc) | petname | | | 171 | | `r` | a reference (URL, etc) | petname | | |
| 171 | | `r` | relay url | marker | [65](65.md) | | 172 | | `r` | relay url | marker | [65](65.md) | |
| 172 | | `t` | hashtag | -- | | | 173 | | `t` | hashtag | -- | | |
| @@ -175,8 +176,7 @@ Please update these lists when proposing NIPs introducing new event kinds. | |||
| 175 | | `challenge` | challenge string | -- | [42](42.md) | | 176 | | `challenge` | challenge string | -- | [42](42.md) | |
| 176 | | `content-warning` | reason | -- | [36](36.md) | | 177 | | `content-warning` | reason | -- | [36](36.md) | |
| 177 | | `delegation` | pubkey, conditions, delegation token | -- | [26](26.md) | | 178 | | `delegation` | pubkey, conditions, delegation token | -- | [26](26.md) | |
| 178 | | `description` | badge description | -- | [58](58.md) | | 179 | | `description` | invoice/badge description | -- | [57](57.md), [58](58.md) | |
| 179 | | `description` | invoice description | -- | [57](57.md) | | ||
| 180 | | `emoji` | shortcode, image URL | -- | [30](30.md) | | 180 | | `emoji` | shortcode, image URL | -- | [30](30.md) | |
| 181 | | `expiration` | unix timestamp (string) | -- | [40](40.md) | | 181 | | `expiration` | unix timestamp (string) | -- | [40](40.md) | |
| 182 | | `goal` | event id (hex) | relay URL | [75](75.md) | | 182 | | `goal` | event id (hex) | relay URL | [75](75.md) | |