mirror of https://github.com/hzrd149/blossom.git
Merge pull request #71 from hzrd149/define-buds
Add BUD-00 to define BUDs and common language
This commit is contained in:
commit
6a27b156ba
37
README.md
37
README.md
|
@ -4,13 +4,29 @@ Blossom uses [nostr](https://github.com/nostr-protocol/nostr) public / private k
|
||||||
|
|
||||||
## What is it?
|
## What is it?
|
||||||
|
|
||||||
Blossom is a spec for a set of HTTP endpoints that allow users to store blobs of data on publicly accessible servers
|
Blossom is a specification for a set of HTTP endpoints that allow users to store blobs of data on publicly accessible servers
|
||||||
|
|
||||||
## What are blobs
|
## What are blobs
|
||||||
|
|
||||||
Blobs are packs of binary data addressed by their sha256 hash
|
Blobs are packs of binary data addressed by their sha256 hash
|
||||||
|
|
||||||
## How does it work?
|
## Protocol specification (BUDs)
|
||||||
|
|
||||||
|
BUDs or **Blossom Upgrade Documents** are short documents that outline an additional feature that a blossom server may implement.
|
||||||
|
|
||||||
|
## BUDs
|
||||||
|
|
||||||
|
- [BUD-00: Blossom Upgrade Documents](./buds/00.md)
|
||||||
|
- [BUD-01: Server requirements and blob retrieval](./buds/01.md)
|
||||||
|
- [BUD-02: Blob upload and management](./buds/02.md)
|
||||||
|
- [BUD-03: User Server List](./buds/03.md)
|
||||||
|
- [BUD-04: Mirroring blobs](./buds/04.md)
|
||||||
|
- [BUD-05: Media optimization](./buds/05.md)
|
||||||
|
- [BUD-06: Upload requirements](./buds/06.md)
|
||||||
|
- [BUD-08: Nostr File Metadata Tags](./buds/08.md)
|
||||||
|
- [BUD-09: Blob Report](./buds/09.md)
|
||||||
|
|
||||||
|
## Endpoints
|
||||||
|
|
||||||
Blossom Servers expose a few endpoints for managing blobs
|
Blossom Servers expose a few endpoints for managing blobs
|
||||||
|
|
||||||
|
@ -32,23 +48,6 @@ Blossom Servers expose a few endpoints for managing blobs
|
||||||
- `Authentication`: Signed [nostr event](./buds/05.md#upload-authorization)
|
- `Authentication`: Signed [nostr event](./buds/05.md#upload-authorization)
|
||||||
- `PUT /report` [BUD-09](./buds/09.md)
|
- `PUT /report` [BUD-09](./buds/09.md)
|
||||||
|
|
||||||
## Protocol specification (BUDs)
|
|
||||||
|
|
||||||
BUDs stand for **Blossom Upgrade Documents**.
|
|
||||||
|
|
||||||
See the [BUDs](./buds) folder and specifically [BUD-01](./buds/01.md) and [BUD-02](./buds/02.md) for a detailed explanation of the endpoints
|
|
||||||
|
|
||||||
## BUDs
|
|
||||||
|
|
||||||
- [BUD-01: Server requirements and blob retrieval](./buds/01.md)
|
|
||||||
- [BUD-02: Blob upload and management](./buds/02.md)
|
|
||||||
- [BUD-03: User Server List](./buds/03.md)
|
|
||||||
- [BUD-04: Mirroring blobs](./buds/04.md)
|
|
||||||
- [BUD-05: Media optimization](./buds/05.md)
|
|
||||||
- [BUD-06: Upload requirements](./buds/06.md)
|
|
||||||
- [BUD-08: Nostr File Metadata Tags](./buds/08.md)
|
|
||||||
- [BUD-09: Blob Report](./buds/09.md)
|
|
||||||
|
|
||||||
## Event kinds
|
## Event kinds
|
||||||
|
|
||||||
| kind | description | BUD |
|
| kind | description | BUD |
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
# BUD-00
|
||||||
|
|
||||||
|
## Blossom Upgrade Documents
|
||||||
|
|
||||||
|
`draft` `mandatory`
|
||||||
|
|
||||||
|
This document details the common language for all following BUDs
|
||||||
|
|
||||||
|
## Language
|
||||||
|
|
||||||
|
All occurences of "MUST", "MUST NOT", "SHOULD", "SHOULD NOT" MUST be interpreted as per [RFC 2119](https://www.rfc-editor.org/rfc/rfc2119)
|
||||||
|
|
||||||
|
## BUDs
|
||||||
|
|
||||||
|
BUDs or "Blossom Upgrade Documents" are short documents that outline an additional requirement or feature that a blossom server MUST or MAY implement.
|
||||||
|
|
||||||
|
## Blobs
|
||||||
|
|
||||||
|
Blobs are raw binary data addressed by the sha256 hash of the data.
|
Loading…
Reference in New Issue