Skip to content

Commit

Permalink
get rid of these arbitrary markdown linebreaks and put everything in …
Browse files Browse the repository at this point in the history
…the same line.
  • Loading branch information
fiatjaf committed Nov 18, 2023
1 parent 2d678bc commit 5e6e7a2
Showing 1 changed file with 6 additions and 17 deletions.
23 changes: 6 additions & 17 deletions 51.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,17 @@ Lists

`draft` `optional` `author:fiatjaf` `author:arcbtc` `author:monlovesmango` `author:eskema` `author:gzuuus`

This NIP defines lists of things that users can create. Lists can contain references to anything, and these
references can be **public** or **private**.
This NIP defines lists of things that users can create. Lists can contain references to anything, and these references can be **public** or **private**.

Public items in a list are specified in the event `tags` array, while private items are specified in a JSON
array that mimics the structure of the event `tags` array, but stringified and encrypted using the same
scheme from [NIP-04](04.md) (the shared key is computed using the author's public and private key) and
stored in the `.content`.
Public items in a list are specified in the event `tags` array, while private items are specified in a JSON array that mimics the structure of the event `tags` array, but stringified and encrypted using the same scheme from [NIP-04](04.md) (the shared key is computed using the author's public and private key) and stored in the `.content`.

## Types of lists

## Standard lists

Standard lists use non-parameterized replaceable events, meaning users may only have a single list
of each kind. They have special meaning and clients may rely on them to augment a user's profile or
browsing experience.
Standard lists use non-parameterized replaceable events, meaning users may only have a single list of each kind. They have special meaning and clients may rely on them to augment a user's profile or browsing experience.

For example, _mute lists_ can contain the public keys of spammers and bad actors users don't want to see in
their feeds or receive annoying notifications from.
For example, _mute lists_ can contain the public keys of spammers and bad actors users don't want to see in their feeds or receive annoying notifications from.

| name | kind | description | expected tag items |
| --- | --- | --- | --- |
Expand All @@ -39,13 +32,9 @@ their feeds or receive annoying notifications from.

## Sets

Sets are lists with well-defined meaning that can enhance the functionality and the UI of clients that rely
on them. Unlike standard lists, users are expected to have more than one set of each kind, therefore each of
them must be assigned a different `"d"` identifier.
Sets are lists with well-defined meaning that can enhance the functionality and the UI of clients that rely on them. Unlike standard lists, users are expected to have more than one set of each kind, therefore each of them must be assigned a different `"d"` identifier.

For example, _relay sets_ can be displayed in a dropdown UI to give users the option to switch to which
relays they will publish an event or from which relays they will read the replies to an event; _curation sets_
can be used by apps to showcase curations made by others tagged to different topics.
For example, _relay sets_ can be displayed in a dropdown UI to give users the option to switch to which relays they will publish an event or from which relays they will read the replies to an event; _curation sets_ can be used by apps to showcase curations made by others tagged to different topics.

Aside from their main identifier, the `"d"` tag, sets can optionally have a `"title"`, an `"image"` and a `"description"` tags that can be used to enhance their UI.

Expand Down

0 comments on commit 5e6e7a2

Please sign in to comment.