mirror of
https://github.com/hzrd149/blossom.git
synced 2026-07-22 07:48:28 +00:00
2c30864340c9ee379067943032f4dbb503602459
The definition restricted BUDs to features a server implements, but BUD-10 (the blossom: URI schema) is already a client-side convention. Broaden the definition to cover client-side conventions and data formats built on Blossom blobs that servers do not implement. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
🌸 Blossom - Blobs stored simply on mediaservers
Blossom uses nostr public / private keys for users identities.
What is it?
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
Blobs are packs of binary data addressed by their sha256 hash
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
- BUD-01: Server requirements and blob retrieval
- BUD-02: Blob upload and management
- BUD-03: User Server List
- BUD-04: Mirroring blobs
- BUD-05: Media optimization
- BUD-06: Upload requirements
- BUD-07: Payment required
- BUD-08: Nostr File Metadata Tags
- BUD-09: Blob Report
- BUD-10: Blossom URI Schema
- BUD-11: Nostr Authorization
- BUD-12: Blob management endpoints
Endpoints
Blossom Servers expose a few endpoints for managing blobs
GET /<sha256>(optional file.ext) BUD-01HEAD /<sha256>(optional file.ext) BUD-01PUT /uploadBUD-02HEAD /uploadBUD-06GET /list/<pubkey>BUD-12 (unrecommended)DELETE /<sha256>BUD-12PUT /mirrorBUD-04HEAD /mediaBUD-05PUT /mediaBUD-05PUT /reportBUD-09
Event kinds
| kind | description | BUD |
|---|---|---|
24242 |
Authorization token | 11 |
10063 |
User Server List | 03 |
License
Public domain.
Description
Languages
Markdown
100%