nips/63.md
2024-11-23 19:25:36 -05:00

48 lines
1.3 KiB
Markdown

NIP-64
======
Build Your Own Story
--------------------
`draft` `optional`
This NIP defines `kind:296` and `kind:297` as text notes with options to navigate to the next text notes and continue reading. Kind `296` serves as the root story and `297` for the sections of that story.
The idea is to replicate the dynamism of build your own adventure books, where each reader takes their own journey in the story.
Story Section events contain an optional `title` tag and `option` tags for the next sections.
Clients SHOULD render options in a way that users can select and move to that post.
```jsonc
{
"kind": 296,
"content": "<the beginning of the story>",
"tags": [
["title", "<short title for this part of the story>"],
["option", "<description>", "<event_id>", "<relay_hint>"],
["option", "<description>", "<event_id>", "<relay_hint>"],
// ...
]
}
```
```jsonc
{
"kind": 297,
"content": "<continuation of the story>",
"tags": [
["title", "<short title for this part of the story>"],
["e", "<event_id>", "<relay_hint>" ] // root event.
["option", "<description>", "<event_id>", "<relay_hint>"],
["option", "<description>", "<event_id>", "<relay_hint>"],
// ...
]
}
```
The story ends when there are no `option`s available.
`.content` SHOULD use the same formatting rules as `kind:1`