diff options
| -rw-r--r-- | 51.md | 37 | ||||
| -rw-r--r-- | 51a.md | 9 | ||||
| -rw-r--r-- | 51b.md | 9 | ||||
| -rw-r--r-- | 51c.md | 9 | ||||
| -rw-r--r-- | 51d.md | 9 |
5 files changed, 26 insertions, 47 deletions
| @@ -6,26 +6,18 @@ Lists | |||
| 6 | 6 | ||
| 7 | `draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` `depends:33` | 7 | `draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` `depends:33` |
| 8 | 8 | ||
| 9 | 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. | 9 | 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. |
| 10 | 10 | ||
| 11 | 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'. | 11 | 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'. |
| 12 | 12 | ||
| 13 | 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'. | 13 | 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'. |
| 14 | 14 | ||
| 15 | ## List Event Kinds | ||
| 16 | |||
| 17 | | kind | list type | NIP | | ||
| 18 | |------|-----------------------------|---------------| | ||
| 19 | | 10000| Mute | [51a](51a.md) | | ||
| 20 | | 10001| Pin | [51b](51b.md) | | ||
| 21 | | 30000| Categorized People | [51c](51c.md) | | ||
| 22 | | 30001| Categorized Bookmarks | [51d](51d.md) | | ||
| 23 | ## Replaceable List Event Example | 15 | ## Replaceable List Event Example |
| 24 | 16 | ||
| 25 | Lets say a user wants to create a 'Mute' list and has keys: | 17 | Lets say a user wants to create a 'Mute' list and has keys: |
| 26 | ``` | 18 | ``` |
| 27 | priv: fb505c65d4df950f5d28c9e4d285ee12ffaf315deef1fc24e3c7cd1e7e35f2b1 | 19 | priv: fb505c65d4df950f5d28c9e4d285ee12ffaf315deef1fc24e3c7cd1e7e35f2b1 |
| 28 | pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d | 20 | pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d |
| 29 | ``` | 21 | ``` |
| 30 | The user wants to publicly include these users: | 22 | The user wants to publicly include these users: |
| 31 | 23 | ||
| @@ -62,7 +54,7 @@ Then the user would create a 'Mute' list event like below: | |||
| 62 | Lets say a user wants to create a 'Categorized People' list of `nostr` people and has keys: | 54 | Lets say a user wants to create a 'Categorized People' list of `nostr` people and has keys: |
| 63 | ``` | 55 | ``` |
| 64 | priv: fb505c65d4df950f5d28c9e4d285ee12ffaf315deef1fc24e3c7cd1e7e35f2b1 | 56 | priv: fb505c65d4df950f5d28c9e4d285ee12ffaf315deef1fc24e3c7cd1e7e35f2b1 |
| 65 | pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d | 57 | pub: b1a5c93edcc8d586566fde53a20bdb50049a97b15483cb763854e57016e0fa3d |
| 66 | ``` | 58 | ``` |
| 67 | The user wants to publicly include these users: | 59 | The user wants to publicly include these users: |
| 68 | 60 | ||
| @@ -94,4 +86,27 @@ Then the user would create a 'Categorized People' list event like below: | |||
| 94 | } | 86 | } |
| 95 | ``` | 87 | ``` |
| 96 | 88 | ||
| 89 | ## List Event Kinds | ||
| 90 | |||
| 91 | | kind | list type | | ||
| 92 | | ------ | ----------------------- | | ||
| 93 | | 10000 | Mute | | ||
| 94 | | 10001 | Pin | | ||
| 95 | | 30000 | Categorized People | | ||
| 96 | | 30001 | Categorized Bookmarks | | ||
| 97 | |||
| 98 | ### Mute List | ||
| 99 | |||
| 100 | 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. | ||
| 101 | |||
| 102 | ### Pin List | ||
| 103 | |||
| 104 | 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. | ||
| 105 | |||
| 106 | ### Categorized People List | ||
| 107 | |||
| 108 | 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). | ||
| 109 | |||
| 110 | ### Categorized Bookmarks List | ||
| 97 | 111 | ||
| 112 | 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. | ||
| @@ -1,9 +0,0 @@ | |||
| 1 | NIP-51a | ||
| 2 | ====== | ||
| 3 | |||
| 4 | Mute List | ||
| 5 | ------------------------- | ||
| 6 | |||
| 7 | `draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` | ||
| 8 | |||
| 9 | 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. \ No newline at end of file | ||
| @@ -1,9 +0,0 @@ | |||
| 1 | NIP-51b | ||
| 2 | ====== | ||
| 3 | |||
| 4 | Pin List | ||
| 5 | ------------------------- | ||
| 6 | |||
| 7 | `draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` | ||
| 8 | |||
| 9 | 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. \ No newline at end of file | ||
| @@ -1,9 +0,0 @@ | |||
| 1 | NIP-51c | ||
| 2 | ====== | ||
| 3 | |||
| 4 | Categorized People List | ||
| 5 | ------------------------- | ||
| 6 | |||
| 7 | `draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` | ||
| 8 | |||
| 9 | 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). \ No newline at end of file | ||
| @@ -1,9 +0,0 @@ | |||
| 1 | NIP-51d | ||
| 2 | ====== | ||
| 3 | |||
| 4 | Categorized Bookmarks List | ||
| 5 | ------------------------- | ||
| 6 | |||
| 7 | `draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` | ||
| 8 | |||
| 9 | 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. | ||