diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 168 |
1 files changed, 114 insertions, 54 deletions
| @@ -15,6 +15,7 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 15 | - [Criteria for acceptance of NIPs](#criteria-for-acceptance-of-nips) | 15 | - [Criteria for acceptance of NIPs](#criteria-for-acceptance-of-nips) |
| 16 | - [Is this repository a centralizing factor?](#is-this-repository-a-centralizing-factor) | 16 | - [Is this repository a centralizing factor?](#is-this-repository-a-centralizing-factor) |
| 17 | - [How this repository works](#how-this-repository-works) | 17 | - [How this repository works](#how-this-repository-works) |
| 18 | - [Breaking Changes](#breaking-changes) | ||
| 18 | - [License](#license) | 19 | - [License](#license) |
| 19 | 20 | ||
| 20 | --- | 21 | --- |
| @@ -24,7 +25,7 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 24 | - [NIP-01: Basic protocol flow description](01.md) | 25 | - [NIP-01: Basic protocol flow description](01.md) |
| 25 | - [NIP-02: Follow List](02.md) | 26 | - [NIP-02: Follow List](02.md) |
| 26 | - [NIP-03: OpenTimestamps Attestations for Events](03.md) | 27 | - [NIP-03: OpenTimestamps Attestations for Events](03.md) |
| 27 | - [NIP-04: Encrypted Direct Message](04.md) | 28 | - [NIP-04: Encrypted Direct Message](04.md) --- **unrecommended**: deprecated in favor of [NIP-17](17.md) |
| 28 | - [NIP-05: Mapping Nostr keys to DNS-based internet identifiers](05.md) | 29 | - [NIP-05: Mapping Nostr keys to DNS-based internet identifiers](05.md) |
| 29 | - [NIP-06: Basic key derivation from mnemonic seed phrase](06.md) | 30 | - [NIP-06: Basic key derivation from mnemonic seed phrase](06.md) |
| 30 | - [NIP-07: `window.nostr` capability for web browsers](07.md) | 31 | - [NIP-07: `window.nostr` capability for web browsers](07.md) |
| @@ -35,6 +36,7 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 35 | - [NIP-13: Proof of Work](13.md) | 36 | - [NIP-13: Proof of Work](13.md) |
| 36 | - [NIP-14: Subject tag in text events](14.md) | 37 | - [NIP-14: Subject tag in text events](14.md) |
| 37 | - [NIP-15: Nostr Marketplace (for resilient marketplaces)](15.md) | 38 | - [NIP-15: Nostr Marketplace (for resilient marketplaces)](15.md) |
| 39 | - [NIP-17: Private Direct Messages](17.md) | ||
| 38 | - [NIP-18: Reposts](18.md) | 40 | - [NIP-18: Reposts](18.md) |
| 39 | - [NIP-19: bech32-encoded entities](19.md) | 41 | - [NIP-19: bech32-encoded entities](19.md) |
| 40 | - [NIP-21: `nostr:` URI scheme](21.md) | 42 | - [NIP-21: `nostr:` URI scheme](21.md) |
| @@ -44,64 +46,94 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 44 | - [NIP-26: Delegated Event Signing](26.md) | 46 | - [NIP-26: Delegated Event Signing](26.md) |
| 45 | - [NIP-27: Text Note References](27.md) | 47 | - [NIP-27: Text Note References](27.md) |
| 46 | - [NIP-28: Public Chat](28.md) | 48 | - [NIP-28: Public Chat](28.md) |
| 49 | - [NIP-29: Relay-based Groups](29.md) | ||
| 47 | - [NIP-30: Custom Emoji](30.md) | 50 | - [NIP-30: Custom Emoji](30.md) |
| 48 | - [NIP-31: Dealing with Unknown Events](31.md) | 51 | - [NIP-31: Dealing with Unknown Events](31.md) |
| 49 | - [NIP-32: Labeling](32.md) | 52 | - [NIP-32: Labeling](32.md) |
| 53 | - [NIP-34: `git` stuff](34.md) | ||
| 54 | - [NIP-35: Torrents](35.md) | ||
| 50 | - [NIP-36: Sensitive Content](36.md) | 55 | - [NIP-36: Sensitive Content](36.md) |
| 51 | - [NIP-38: User Statuses](38.md) | 56 | - [NIP-38: User Statuses](38.md) |
| 52 | - [NIP-39: External Identities in Profiles](39.md) | 57 | - [NIP-39: External Identities in Profiles](39.md) |
| 53 | - [NIP-40: Expiration Timestamp](40.md) | 58 | - [NIP-40: Expiration Timestamp](40.md) |
| 54 | - [NIP-42: Authentication of clients to relays](42.md) | 59 | - [NIP-42: Authentication of clients to relays](42.md) |
| 60 | - [NIP-44: Versioned Encryption](44.md) | ||
| 55 | - [NIP-45: Counting results](45.md) | 61 | - [NIP-45: Counting results](45.md) |
| 56 | - [NIP-46: Nostr Connect](46.md) | 62 | - [NIP-46: Nostr Connect](46.md) |
| 57 | - [NIP-47: Wallet Connect](47.md) | 63 | - [NIP-47: Wallet Connect](47.md) |
| 58 | - [NIP-48: Proxy Tags](48.md) | 64 | - [NIP-48: Proxy Tags](48.md) |
| 65 | - [NIP-49: Private Key Encryption](49.md) | ||
| 59 | - [NIP-50: Search Capability](50.md) | 66 | - [NIP-50: Search Capability](50.md) |
| 60 | - [NIP-51: Lists](51.md) | 67 | - [NIP-51: Lists](51.md) |
| 61 | - [NIP-52: Calendar Events](52.md) | 68 | - [NIP-52: Calendar Events](52.md) |
| 62 | - [NIP-53: Live Activities](53.md) | 69 | - [NIP-53: Live Activities](53.md) |
| 70 | - [NIP-54: Wiki](54.md) | ||
| 71 | - [NIP-55: Android Signer Application](55.md) | ||
| 63 | - [NIP-56: Reporting](56.md) | 72 | - [NIP-56: Reporting](56.md) |
| 64 | - [NIP-57: Lightning Zaps](57.md) | 73 | - [NIP-57: Lightning Zaps](57.md) |
| 65 | - [NIP-58: Badges](58.md) | 74 | - [NIP-58: Badges](58.md) |
| 75 | - [NIP-59: Gift Wrap](59.md) | ||
| 66 | - [NIP-65: Relay List Metadata](65.md) | 76 | - [NIP-65: Relay List Metadata](65.md) |
| 77 | - [NIP-70: Protected Events](70.md) | ||
| 78 | - [NIP-71: Video Events](71.md) | ||
| 67 | - [NIP-72: Moderated Communities](72.md) | 79 | - [NIP-72: Moderated Communities](72.md) |
| 68 | - [NIP-75: Zap Goals](75.md) | 80 | - [NIP-75: Zap Goals](75.md) |
| 69 | - [NIP-78: Application-specific data](78.md) | 81 | - [NIP-78: Application-specific data](78.md) |
| 70 | - [NIP-84: Highlights](84.md) | 82 | - [NIP-84: Highlights](84.md) |
| 71 | - [NIP-89: Recommended Application Handlers](89.md) | 83 | - [NIP-89: Recommended Application Handlers](89.md) |
| 72 | - [NIP-90: Data Vending Machines](90.md) | 84 | - [NIP-90: Data Vending Machines](90.md) |
| 85 | - [NIP-92: Media Attachments](92.md) | ||
| 73 | - [NIP-94: File Metadata](94.md) | 86 | - [NIP-94: File Metadata](94.md) |
| 87 | - [NIP-96: HTTP File Storage Integration](96.md) | ||
| 74 | - [NIP-98: HTTP Auth](98.md) | 88 | - [NIP-98: HTTP Auth](98.md) |
| 75 | - [NIP-99: Classified Listings](99.md) | 89 | - [NIP-99: Classified Listings](99.md) |
| 76 | 90 | ||
| 77 | ## Event Kinds | 91 | ## Event Kinds |
| 78 | | kind | description | NIP | | 92 | | kind | description | NIP | |
| 79 | | ------------- | -------------------------- | ----------- | | 93 | | ------------- | -------------------------- | ------------------------ | |
| 80 | | `0` | Metadata | [1](01.md) | | 94 | | `0` | User Metadata | [01](01.md) | |
| 81 | | `1` | Short Text Note | [1](01.md) | | 95 | | `1` | Short Text Note | [01](01.md) | |
| 82 | | `2` | Recommend Relay | | | 96 | | `2` | Recommend Relay | 01 (deprecated) | |
| 83 | | `3` | Follows | [2](02.md) | | 97 | | `3` | Follows | [02](02.md) | |
| 84 | | `4` | Encrypted Direct Messages | [4](04.md) | | 98 | | `4` | Encrypted Direct Messages | [04](04.md) | |
| 85 | | `5` | Event Deletion | [9](09.md) | | 99 | | `5` | Event Deletion | [09](09.md) | |
| 86 | | `6` | Repost | [18](18.md) | | 100 | | `6` | Repost | [18](18.md) | |
| 87 | | `7` | Reaction | [25](25.md) | | 101 | | `7` | Reaction | [25](25.md) | |
| 88 | | `8` | Badge Award | [58](58.md) | | 102 | | `8` | Badge Award | [58](58.md) | |
| 103 | | `9` | Group Chat Message | [29](29.md) | | ||
| 104 | | `10` | Group Chat Threaded Reply | [29](29.md) | | ||
| 105 | | `11` | Group Thread | [29](29.md) | | ||
| 106 | | `12` | Group Thread Reply | [29](29.md) | | ||
| 107 | | `13` | Seal | [59](59.md) | | ||
| 108 | | `14` | Direct Message | [17](17.md) | | ||
| 89 | | `16` | Generic Repost | [18](18.md) | | 109 | | `16` | Generic Repost | [18](18.md) | |
| 90 | | `40` | Channel Creation | [28](28.md) | | 110 | | `40` | Channel Creation | [28](28.md) | |
| 91 | | `41` | Channel Metadata | [28](28.md) | | 111 | | `41` | Channel Metadata | [28](28.md) | |
| 92 | | `42` | Channel Message | [28](28.md) | | 112 | | `42` | Channel Message | [28](28.md) | |
| 93 | | `43` | Channel Hide Message | [28](28.md) | | 113 | | `43` | Channel Hide Message | [28](28.md) | |
| 94 | | `44` | Channel Mute User | [28](28.md) | | 114 | | `44` | Channel Mute User | [28](28.md) | |
| 115 | | `818` | Merge Requests | [54](54.md) | | ||
| 116 | | `1021` | Bid | [15](15.md) | | ||
| 117 | | `1022` | Bid confirmation | [15](15.md) | | ||
| 95 | | `1040` | OpenTimestamps | [03](03.md) | | 118 | | `1040` | OpenTimestamps | [03](03.md) | |
| 119 | | `1059` | Gift Wrap | [59](59.md) | | ||
| 96 | | `1063` | File Metadata | [94](94.md) | | 120 | | `1063` | File Metadata | [94](94.md) | |
| 97 | | `1311` | Live Chat Message | [53](53.md) | | 121 | | `1311` | Live Chat Message | [53](53.md) | |
| 122 | | `1617` | Patches | [34](34.md) | | ||
| 123 | | `1621` | Issues | [34](34.md) | | ||
| 124 | | `1622` | Replies | [34](34.md) | | ||
| 125 | | `1630`-`1633` | Status | [34](34.md) | | ||
| 98 | | `1971` | Problem Tracker | [nostrocket][nostrocket] | | 126 | | `1971` | Problem Tracker | [nostrocket][nostrocket] | |
| 99 | | `1984` | Reporting | [56](56.md) | | 127 | | `1984` | Reporting | [56](56.md) | |
| 100 | | `1985` | Label | [32](32.md) | | 128 | | `1985` | Label | [32](32.md) | |
| 129 | | `2003` | Torrent | [35](35.md) | | ||
| 130 | | `2004` | Torrent Comment | [35](35.md) | | ||
| 131 | | `2022` | Coinjoin Pool | [joinstr][joinstr] | | ||
| 101 | | `4550` | Community Post Approval | [72](72.md) | | 132 | | `4550` | Community Post Approval | [72](72.md) | |
| 102 | | `5000`-`5999` | Job Request | [90](90.md) | | 133 | | `5000`-`5999` | Job Request | [90](90.md) | |
| 103 | | `6000`-`6999` | Job Result | [90](90.md) | | 134 | | `6000`-`6999` | Job Result | [90](90.md) | |
| 104 | | `7000` | Job Feedback | [90](90.md) | | 135 | | `7000` | Job Feedback | [90](90.md) | |
| 136 | | `9000`-`9030` | Group Control Events | [29](29.md) | | ||
| 105 | | `9041` | Zap Goal | [75](75.md) | | 137 | | `9041` | Zap Goal | [75](75.md) | |
| 106 | | `9734` | Zap Request | [57](57.md) | | 138 | | `9734` | Zap Request | [57](57.md) | |
| 107 | | `9735` | Zap | [57](57.md) | | 139 | | `9735` | Zap | [57](57.md) | |
| @@ -114,8 +146,11 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 114 | | `10005` | Public chats list | [51](51.md) | | 146 | | `10005` | Public chats list | [51](51.md) | |
| 115 | | `10006` | Blocked relays list | [51](51.md) | | 147 | | `10006` | Blocked relays list | [51](51.md) | |
| 116 | | `10007` | Search relays list | [51](51.md) | | 148 | | `10007` | Search relays list | [51](51.md) | |
| 149 | | `10009` | User groups | [51](51.md), [29](29.md) | | ||
| 117 | | `10015` | Interests list | [51](51.md) | | 150 | | `10015` | Interests list | [51](51.md) | |
| 118 | | `10030` | User emoji list | [51](51.md) | | 151 | | `10030` | User emoji list | [51](51.md) | |
| 152 | | `10050` | Relay list to receive DMs | [17](17.md) | | ||
| 153 | | `10096` | File storage server list | [96](96.md) | | ||
| 119 | | `13194` | Wallet Info | [47](47.md) | | 154 | | `13194` | Wallet Info | [47](47.md) | |
| 120 | | `21000` | Lightning Pub RPC | [Lightning.Pub][lnpub] | | 155 | | `21000` | Lightning Pub RPC | [Lightning.Pub][lnpub] | |
| 121 | | `22242` | Client Authentication | [42](42.md) | | 156 | | `22242` | Client Authentication | [42](42.md) | |
| @@ -128,29 +163,43 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 128 | | `30002` | Relay sets | [51](51.md) | | 163 | | `30002` | Relay sets | [51](51.md) | |
| 129 | | `30003` | Bookmark sets | [51](51.md) | | 164 | | `30003` | Bookmark sets | [51](51.md) | |
| 130 | | `30004` | Curation sets | [51](51.md) | | 165 | | `30004` | Curation sets | [51](51.md) | |
| 166 | | `30005` | Video sets | [51](51.md) | | ||
| 131 | | `30008` | Profile Badges | [58](58.md) | | 167 | | `30008` | Profile Badges | [58](58.md) | |
| 132 | | `30009` | Badge Definition | [58](58.md) | | 168 | | `30009` | Badge Definition | [58](58.md) | |
| 133 | | `30015` | Interest sets | [51](51.md) | | 169 | | `30015` | Interest sets | [51](51.md) | |
| 134 | | `30017` | Create or update a stall | [15](15.md) | | 170 | | `30017` | Create or update a stall | [15](15.md) | |
| 135 | | `30018` | Create or update a product | [15](15.md) | | 171 | | `30018` | Create or update a product | [15](15.md) | |
| 172 | | `30019` | Marketplace UI/UX | [15](15.md) | | ||
| 173 | | `30020` | Product sold as an auction | [15](15.md) | | ||
| 136 | | `30023` | Long-form Content | [23](23.md) | | 174 | | `30023` | Long-form Content | [23](23.md) | |
| 137 | | `30024` | Draft Long-form Content | [23](23.md) | | 175 | | `30024` | Draft Long-form Content | [23](23.md) | |
| 138 | | `30030` | Emoji sets | [51](51.md) | | 176 | | `30030` | Emoji sets | [51](51.md) | |
| 177 | | `30063` | Release artifact sets | [51](51.md) | | ||
| 139 | | `30078` | Application-specific Data | [78](78.md) | | 178 | | `30078` | Application-specific Data | [78](78.md) | |
| 140 | | `30311` | Live Event | [53](53.md) | | 179 | | `30311` | Live Event | [53](53.md) | |
| 141 | | `30315` | User Statuses | [38](38.md) | | 180 | | `30315` | User Statuses | [38](38.md) | |
| 142 | | `30402` | Classified Listing | [99](99.md) | | 181 | | `30402` | Classified Listing | [99](99.md) | |
| 143 | | `30403` | Draft Classified Listing | [99](99.md) | | 182 | | `30403` | Draft Classified Listing | [99](99.md) | |
| 183 | | `30617` | Repository announcements | [34](34.md) | | ||
| 184 | | `30818` | Wiki article | [54](54.md) | | ||
| 185 | | `30819` | Redirects | [54](54.md) | | ||
| 186 | | `31890` | Feed | [NUD: Custom Feeds](https://wikifreedia.xyz/cip-01/97c70a44366a6535c1) | | ||
| 144 | | `31922` | Date-Based Calendar Event | [52](52.md) | | 187 | | `31922` | Date-Based Calendar Event | [52](52.md) | |
| 145 | | `31923` | Time-Based Calendar Event | [52](52.md) | | 188 | | `31923` | Time-Based Calendar Event | [52](52.md) | |
| 146 | | `31924` | Calendar | [52](52.md) | | 189 | | `31924` | Calendar | [52](52.md) | |
| 147 | | `31925` | Calendar Event RSVP | [52](52.md) | | 190 | | `31925` | Calendar Event RSVP | [52](52.md) | |
| 148 | | `31989` | Handler recommendation | [89](89.md) | | 191 | | `31989` | Handler recommendation | [89](89.md) | |
| 149 | | `31990` | Handler information | [89](89.md) | | 192 | | `31990` | Handler information | [89](89.md) | |
| 193 | | `34235` | Video Event | [71](71.md) | | ||
| 194 | | `34236` | Short-form Portrait Video Event | [71](71.md) | | ||
| 195 | | `34237` | Video View Event | [71](71.md) | | ||
| 150 | | `34550` | Community Definition | [72](72.md) | | 196 | | `34550` | Community Definition | [72](72.md) | |
| 197 | | `39000-9` | Group metadata events | [29](29.md) | | ||
| 151 | 198 | ||
| 199 | [NUD: Custom Feeds]: https://wikifreedia.xyz/cip-01/97c70a44366a6535c1 | ||
| 152 | [nostrocket]: https://github.com/nostrocket/NIPS/blob/main/Problems.md | 200 | [nostrocket]: https://github.com/nostrocket/NIPS/blob/main/Problems.md |
| 153 | [lnpub]: https://github.com/shocknet/Lightning.Pub/blob/master/proto/autogenerated/client.md | 201 | [lnpub]: https://github.com/shocknet/Lightning.Pub/blob/master/proto/autogenerated/client.md |
| 202 | [joinstr]: https://gitlab.com/1440000bytes/joinstr/-/blob/main/NIP.md | ||
| 154 | 203 | ||
| 155 | ## Message types | 204 | ## Message types |
| 156 | 205 | ||
| @@ -176,57 +225,64 @@ They exist to document what may be implemented by [Nostr](https://github.com/nos | |||
| 176 | | `AUTH` | used to send authentication challenges | [42](42.md) | | 225 | | `AUTH` | used to send authentication challenges | [42](42.md) | |
| 177 | | `COUNT` | used to send requested event counts to clients | [45](45.md) | | 226 | | `COUNT` | used to send requested event counts to clients | [45](45.md) | |
| 178 | 227 | ||
| 179 | Please update these lists when proposing NIPs introducing new event kinds. | ||
| 180 | |||
| 181 | ## Standardized Tags | 228 | ## Standardized Tags |
| 182 | 229 | ||
| 183 | | name | value | other parameters | NIP | | 230 | | name | value | other parameters | NIP | |
| 184 | | ----------------- | ------------------------------------ | -------------------- | ------------------------------------- | | 231 | | ----------------- | ------------------------------------ | ------------------------------- | ------------------------------------- | |
| 185 | | `e` | event id (hex) | relay URL, marker | [01](01.md), [10](10.md) | | 232 | | `e` | event id (hex) | relay URL, marker, pubkey (hex) | [01](01.md), [10](10.md) | |
| 186 | | `p` | pubkey (hex) | relay URL, petname | [01](01.md), [02](02.md) | | 233 | | `p` | pubkey (hex) | relay URL, petname | [01](01.md), [02](02.md) | |
| 187 | | `a` | coordinates to an event | relay URL | [01](01.md) | | 234 | | `a` | coordinates to an event | relay URL | [01](01.md) | |
| 188 | | `d` | identifier | -- | [01](01.md) | | 235 | | `d` | identifier | -- | [01](01.md) | |
| 189 | | `g` | geohash | -- | [52](52.md) | | 236 | | `-` | -- | -- | [70](70.md) | |
| 190 | | `i` | identity | proof | [39](39.md) | | 237 | | `g` | geohash | -- | [52](52.md) | |
| 191 | | `k` | kind number (string) | -- | [18](18.md), [25](25.md), [72](72.md) | | 238 | | `h` | group id | -- | [29](29.md) | |
| 192 | | `l` | label, label namespace | annotations | [32](32.md) | | 239 | | `i` | identity | proof | [39](39.md) | |
| 193 | | `L` | label namespace | -- | [32](32.md) | | 240 | | `k` | kind number (string) | -- | [18](18.md), [25](25.md), [72](72.md) | |
| 194 | | `m` | MIME type | -- | [94](94.md) | | 241 | | `l` | label, label namespace | -- | [32](32.md) | |
| 195 | | `r` | a reference (URL, etc) | petname | | | 242 | | `L` | label namespace | -- | [32](32.md) | |
| 196 | | `r` | relay url | marker | [65](65.md) | | 243 | | `m` | MIME type | -- | [94](94.md) | |
| 197 | | `t` | hashtag | -- | | | 244 | | `q` | event id (hex) | relay URL | [18](18.md) | |
| 198 | | `alt` | summary | -- | [31](31.md) | | 245 | | `r` | a reference (URL, etc) | petname | [24](24.md) | |
| 199 | | `amount` | millisatoshis, stringified | -- | [57](57.md) | | 246 | | `r` | relay url | marker | [65](65.md) | |
| 200 | | `bolt11` | `bolt11` invoice | -- | [57](57.md) | | 247 | | `t` | hashtag | -- | | |
| 201 | | `challenge` | challenge string | -- | [42](42.md) | | 248 | | `alt` | summary | -- | [31](31.md) | |
| 202 | | `client` | name, address | relay URL | [89](89.md) | | 249 | | `amount` | millisatoshis, stringified | -- | [57](57.md) | |
| 203 | | `content-warning` | reason | -- | [36](36.md) | | 250 | | `bolt11` | `bolt11` invoice | -- | [57](57.md) | |
| 204 | | `delegation` | pubkey, conditions, delegation token | -- | [26](26.md) | | 251 | | `challenge` | challenge string | -- | [42](42.md) | |
| 205 | | `description` | invoice/badge description | -- | [57](57.md), [58](58.md) | | 252 | | `client` | name, address | relay URL | [89](89.md) | |
| 206 | | `emoji` | shortcode, image URL | -- | [30](30.md) | | 253 | | `clone` | git clone URL | -- | [34](34.md) | |
| 207 | | `encrypted` | -- | -- | [90](90.md) | | 254 | | `content-warning` | reason | -- | [36](36.md) | |
| 208 | | `expiration` | unix timestamp (string) | -- | [40](40.md) | | 255 | | `delegation` | pubkey, conditions, delegation token | -- | [26](26.md) | |
| 209 | | `goal` | event id (hex) | relay URL | [75](75.md) | | 256 | | `description` | description | -- | [34](34.md), [57](57.md), [58](58.md) | |
| 210 | | `image` | image URL | dimensions in pixels | [23](23.md), [58](58.md) | | 257 | | `emoji` | shortcode, image URL | -- | [30](30.md) | |
| 211 | | `lnurl` | `bech32` encoded `lnurl` | -- | [57](57.md) | | 258 | | `encrypted` | -- | -- | [90](90.md) | |
| 212 | | `location` | location string | -- | [52](52.md), [99](99.md) | | 259 | | `expiration` | unix timestamp (string) | -- | [40](40.md) | |
| 213 | | `name` | badge name | -- | [58](58.md) | | 260 | | `goal` | event id (hex) | relay URL | [75](75.md) | |
| 214 | | `nonce` | random | -- | [13](13.md) | | 261 | | `image` | image URL | dimensions in pixels | [23](23.md), [58](58.md) | |
| 215 | | `preimage` | hash of `bolt11` invoice | -- | [57](57.md) | | 262 | | `imeta` | inline metadata | -- | [92](92.md) | |
| 216 | | `price` | price | currency, frequency | [99](99.md) | | 263 | | `lnurl` | `bech32` encoded `lnurl` | -- | [57](57.md) | |
| 217 | | `proxy` | external ID | protocol | [48](48.md) | | 264 | | `location` | location string | -- | [52](52.md), [99](99.md) | |
| 218 | | `published_at` | unix timestamp (string) | -- | [23](23.md) | | 265 | | `name` | name | -- | [34](34.md), [58](58.md) | |
| 219 | | `relay` | relay url | -- | [42](42.md) | | 266 | | `nonce` | random | difficulty | [13](13.md) | |
| 220 | | `relays` | relay list | -- | [57](57.md) | | 267 | | `preimage` | hash of `bolt11` invoice | -- | [57](57.md) | |
| 221 | | `subject` | subject | -- | [14](14.md) | | 268 | | `price` | price | currency, frequency | [99](99.md) | |
| 222 | | `summary` | article summary | -- | [23](23.md) | | 269 | | `proxy` | external ID | protocol | [48](48.md) | |
| 223 | | `thumb` | badge thumbnail | dimensions in pixels | [58](58.md) | | 270 | | `published_at` | unix timestamp (string) | -- | [23](23.md) | |
| 224 | | `title` | article title | -- | [23](23.md) | | 271 | | `relay` | relay url | -- | [42](42.md), [17](17.md) | |
| 225 | | `zap` | pubkey (hex), relay URL | weight | [57](57.md) | | 272 | | `relays` | relay list | -- | [57](57.md) | |
| 273 | | `server` | file storage server url | -- | [96](96.md) | | ||
| 274 | | `subject` | subject | -- | [14](14.md), [17](17.md) | | ||
| 275 | | `summary` | article summary | -- | [23](23.md) | | ||
| 276 | | `thumb` | badge thumbnail | dimensions in pixels | [58](58.md) | | ||
| 277 | | `title` | article title | -- | [23](23.md) | | ||
| 278 | | `web` | webpage URL | -- | [34](34.md) | | ||
| 279 | | `zap` | pubkey (hex), relay URL | weight | [57](57.md) | | ||
| 280 | |||
| 281 | Please update these lists when proposing new NIPs. | ||
| 226 | 282 | ||
| 227 | ## Criteria for acceptance of NIPs | 283 | ## Criteria for acceptance of NIPs |
| 228 | 284 | ||
| 229 | 1. They should be implemented in at least two clients and one relay -- when applicable. | 285 | 1. They should be fully implemented in at least two clients and one relay -- when applicable. |
| 230 | 2. They should make sense. | 286 | 2. They should make sense. |
| 231 | 3. They should be optional and backwards-compatible: care must be taken such that clients and relays that choose to not implement them do not stop working when interacting with the ones that choose to. | 287 | 3. They should be optional and backwards-compatible: care must be taken such that clients and relays that choose to not implement them do not stop working when interacting with the ones that choose to. |
| 232 | 4. There should be no more than one way of doing the same thing. | 288 | 4. There should be no more than one way of doing the same thing. |
| @@ -246,6 +302,10 @@ Standards may emerge in two ways: the first way is that someone starts doing som | |||
| 246 | 302 | ||
| 247 | These two ways of standardizing things are supported by this repository. Although the second is preferred, an effort will be made to codify standards emerged outside this repository into NIPs that can be later referenced and easily understood and implemented by others -- but obviously as in any human system discretion may be applied when standards are considered harmful. | 303 | These two ways of standardizing things are supported by this repository. Although the second is preferred, an effort will be made to codify standards emerged outside this repository into NIPs that can be later referenced and easily understood and implemented by others -- but obviously as in any human system discretion may be applied when standards are considered harmful. |
| 248 | 304 | ||
| 305 | ## Breaking Changes | ||
| 306 | |||
| 307 | [Breaking Changes](BREAKING.md) | ||
| 308 | |||
| 249 | ## License | 309 | ## License |
| 250 | 310 | ||
| 251 | All NIPs are public domain. | 311 | All NIPs are public domain. |