merge all nips 51* into nip 51.

This commit is contained in:
fiatjaf 2023-03-09 15:56:17 -03:00
parent 5a6a758042
commit 92d087bbc3
No known key found for this signature in database
GPG Key ID: BAD43C4BE5C1A3A1
5 changed files with 26 additions and 47 deletions

37
51.md
View File

@ -6,26 +6,18 @@ Lists
`draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` `depends:33`
A "list" event is defined as having a list of public and/or private tags. Public tags will be listed in the event `tags`. Private tags will be encrypted in the event `content`. Encryption for private tags will use [NIP-04 - Encrypted Direct Message](04.md) encryption, using the list author's private and public key for the shared secret. A distinct event kind should be used for each list type created.
A "list" event is defined as having a list of public and/or private tags. Public tags will be listed in the event `tags`. Private tags will be encrypted in the event `content`. Encryption for private tags will use [NIP-04 - Encrypted Direct Message](04.md) encryption, using the list author's private and public key for the shared secret. A distinct event kind should be used for each list type created.
If a list type should only be defined once per user (like the 'Mute' list), the list type's events should follow the specification for [NIP-16 - Replaceable Events](16.md). These lists may be referred to as 'replaceable lists'.
Otherwise the list type's events should follow the specification for [NIP-33 - Parameterized Replaceable Events](33.md), where the list name will be used as the 'd' parameter. These lists may be referred to as 'parameterized replaceable lists'.
## List Event Kinds
| kind | list type | NIP |
|------|-----------------------------|---------------|
| 10000| Mute | [51a](51a.md) |
| 10001| Pin | [51b](51b.md) |
| 30000| Categorized People | [51c](51c.md) |
| 30001| Categorized Bookmarks | [51d](51d.md) |
## Replaceable List Event Example
Lets say a user wants to create a 'Mute' list and has keys:
```
priv: fb505c65d4df950f5d28c9e4d285ee12ffaf315deef1fc24e3c7cd1e7e35f2b1
pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d
pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d
```
The user wants to publicly include these users:
@ -62,7 +54,7 @@ Then the user would create a 'Mute' list event like below:
Lets say a user wants to create a 'Categorized People' list of `nostr` people and has keys:
```
priv: fb505c65d4df950f5d28c9e4d285ee12ffaf315deef1fc24e3c7cd1e7e35f2b1
pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d
pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d
```
The user wants to publicly include these users:
@ -94,4 +86,27 @@ Then the user would create a 'Categorized People' list event like below:
}
```
## List Event Kinds
| kind | list type |
| ------ | ----------------------- |
| 10000 | Mute |
| 10001 | Pin |
| 30000 | Categorized People |
| 30001 | Categorized Bookmarks |
### Mute List
An event with kind `10000` is defined as a replaceable list event (see [NIP-51 - Lists](51.md) for listing content a user wants to mute. Any standarized tag can be included in a Mute List.
### Pin List
An event with kind `10001` is defined as a replaceable list event (see [NIP-51 - Lists](51.md) for listing content a user wants to pin. Any standarized tag can be included in a Pin List.
### Categorized People List
An event with kind `30000` is defined as a parameterized replaceable list event (see [NIP-51 - Lists](51.md)) for categorizing people. The 'd' parameter for this event holds the category name of the list. The tags included in these lists MUST follow the format of kind 3 events as defined in [NIP-02 - Contact List and Petnames](02.md).
### Categorized Bookmarks List
An event with kind `30001` is defined as a parameterized replaceable list event (see [NIP-51 - Lists](51.md)) for categorizing bookmarks. The 'd' parameter for this event holds the category name of the list. Any standarized tag can be included in a Categorized Bookmarks List.

9
51a.md
View File

@ -1,9 +0,0 @@
NIP-51a
======
Mute List
-------------------------
`draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema`
An event with kind `10000` is defined as a replaceable list event (see [NIP-51 - Lists](51.md) for listing content a user wants to mute. Any standarized tag can be included in a Mute List.

9
51b.md
View File

@ -1,9 +0,0 @@
NIP-51b
======
Pin List
-------------------------
`draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema`
An event with kind `10001` is defined as a replaceable list event (see [NIP-51 - Lists](51.md) for listing content a user wants to pin. Any standarized tag can be included in a Pin List.

9
51c.md
View File

@ -1,9 +0,0 @@
NIP-51c
======
Categorized People List
-------------------------
`draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema`
An event with kind `30000` is defined as a parameterized replaceable list event (see [NIP-51 - Lists](51.md)) for categorizing people. The 'd' parameter for this event holds the category name of the list. The tags included in these lists MUST follow the format of kind 3 events as defined in [NIP-02 - Contact List and Petnames](02.md).

9
51d.md
View File

@ -1,9 +0,0 @@
NIP-51d
======
Categorized Bookmarks List
-------------------------
`draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema`
An event with kind `30001` is defined as a parameterized replaceable list event (see [NIP-51 - Lists](51.md)) for categorizing bookmarks. The 'd' parameter for this event holds the category name of the list. Any standarized tag can be included in a Categorized Bookmarks List.