mirror of
https://github.com/nostr-protocol/nips.git
synced 2024-11-09 22:09:06 -05:00
27 lines
1.6 KiB
Markdown
27 lines
1.6 KiB
Markdown
|
# NIPs over Nostr
|
||
|
|
||
|
`draft` `optional` `author:Semisol`
|
||
|
|
||
|
This NIP defines a method to do NIPs over Nostr.
|
||
|
|
||
|
## NIP event
|
||
|
|
||
|
A NIP event is an event with kind 9777. The content is in Markdown and is the NIP text.
|
||
|
|
||
|
A NIP event can be identified in multiple ways:
|
||
|
- `50001:<author>:<d tag>`: Represents the NIP.
|
||
|
- `!50001:<author>:<version>@<id>:<d tag>`: Represents a specific version of this NIP. The ID may be omitted.
|
||
|
|
||
|
The following tags may be in a NIP event (bold ones are mandatory, and underlined ones may be used more than once):
|
||
|
- **`d`**: A distinguishing tag for this NIP. A NIP event is identified by the author's public key and this d tag.
|
||
|
- **`v`**: The version for this NIP, as a limited subset of SemVer in the format `major.minor.patch`.
|
||
|
- More than one event can exist for the same version of a NIP. This is intended for minor edits, and if this is encountered, the event with the higher created_at is used,
|
||
|
and this SHOULD be avoided when possible.
|
||
|
- **__`p`__**: An author or contributor of this NIP. The parameter after the public key can be specified the type of contribution (more may be added):
|
||
|
- `author`: An author of this NIP.
|
||
|
- `contrib`: Someone that contributed to this NIP.
|
||
|
- __`D`__: Depends on tag, in the format `["D", "50001:<author>:<d tag>", "<version>@<id>"]`. The ID may not be omitted.
|
||
|
- __`E`__: Extends tag, in the same format as the `D` tag.
|
||
|
- __`K`__: A kind or kind range this NIP uses, such as `0` or `10000-19999`.
|
||
|
- __**`license`**__: A license for this NIP as an SPDX license identifier. Multiple tags mean any can be chosen by the user.
|