upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/94.md
diff options
context:
space:
mode:
Diffstat (limited to '94.md')
-rw-r--r--94.md36
1 files changed, 14 insertions, 22 deletions
diff --git a/94.md b/94.md
index 87b0f3a..d29548e 100644
--- a/94.md
+++ b/94.md
@@ -1,13 +1,17 @@
1NIP-94 - File Header 1NIP-94
2====== 2======
3`draft` `optional` `author:frbitten`
4 3
5The purpose of this NIP is to allow an organization and classification of shared files. So that relays can filter and organize in any way that is of interest. 4File Metadata
6Also the goal is to create a base on the protocol for this bountsr "Filesharing App" (https://bountsr.org/p2p-filesharing/) to be implemented. 5-------------
6
7`draft` `optional` `author:frbitten` `author:kieran` `author:lovvtide` `author:fiatjaf`
8
9The purpose of this NIP is to allow an organization and classification of shared files. So that relays can filter and organize in any way that is of interest. With that, multiple types of filesharing clients can be created. NIP-94 support is not expected to be implemented by "social" clients that deal with kind:1 notes or by longform clients that deal with kind:30023 articles.
10
11## Event format
7 12
8Nostr event
9------------------
10This NIP specifies the use of the `1063` event type, having in `content` a description of the file content, and a list of tags described below: 13This NIP specifies the use of the `1063` event type, having in `content` a description of the file content, and a list of tags described below:
14
11* `url` the url to download the file 15* `url` the url to download the file
12* `m` a string indicating the data type of the file. The MIME types format must be used (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types) 16* `m` a string indicating the data type of the file. The MIME types format must be used (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types)
13* `"aes-256-gcm"` (optional) key and nonce for AES-GCM encryption with tagSize always 128bits 17* `"aes-256-gcm"` (optional) key and nonce for AES-GCM encryption with tagSize always 128bits
@@ -15,7 +19,7 @@ This NIP specifies the use of the `1063` event type, having in `content` a descr
15* `size` (optional) size of file in bytes 19* `size` (optional) size of file in bytes
16* `magnet` (optional) URI to magnet file 20* `magnet` (optional) URI to magnet file
17* `i` (optional) torrent infohash 21* `i` (optional) torrent infohash
18* `blurhash`(optional) the [blurhash](https://github.com/woltapp/blurhash) to show while the file is being loaded by the client 22* `blurhash`(optional) the [blurhash](https://github.com/woltapp/blurhash) to show while the file is being loaded by the client
19 23
20```json 24```json
21{ 25{
@@ -38,20 +42,8 @@ This NIP specifies the use of the `1063` event type, having in `content` a descr
38} 42}
39``` 43```
40 44
41Client Behavior 45## Suggested use cases
42---------------
43The client can use this event as they see fit. Either showing events in the same feed as kind 1 events or creating a specific feed for file listings.
44
45It allows the app to create image galleries (memes, animations) that can be reused countless times in different notes. As it exists in whatsapp, telegram, etc.
46
47Example: <https://ibb.co/Fnj5TMg>
48
49To do this, just select the image from the gallery (events NIP-94) and include the URL of the selected image
50
51 46
52Suggested Use Cases 47* A relay for indexing shared files. For example, to promote torrents.
53------------------- 48* A pinterest-like client where people can share their portfolio and inspire others.
54* A relay for indexing shared files. For example to promote torrents
55* A Pinterest-like relay and app where people can share their portfolio and inspire others.
56* A simple way to distribute configurations and software updates. 49* A simple way to distribute configurations and software updates.
57* Specialized relays can provide collections of emojis, memes and animated gifs to be used in notes.