- Remove broken submodule reference for pkg/protocol/blossom/blossom and track blossom spec files as regular files instead - Add IMPORT_MEMORY_OPTIMIZATION_PLAN.md documenting strategies to constrain import memory usage to ≤1.5GB through cache reduction, batched syncs, batch transactions, and adaptive rate limiting - Based on test results: 2.1M events imported in 48min at 736 events/sec with peak memory of 6.4GB (target is 1.5GB) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2.6 KiB
2.6 KiB
🌸 Blossom - Blobs stored simply on mediaservers
Blossom uses nostr public / private keys for identities. Users are expected to sign authorization events to prove their identity when interacting with servers
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
Endpoints
Blossom Servers expose a few endpoints for managing blobs
GET /<sha256>(optional file.ext) BUD-01HEAD /<sha256>(optional file.ext) BUD-01PUT /uploadBUD-02Authentication: Signed nostr event- Return a blob descriptor
HEAD /uploadBUD-06GET /list/<pubkey>BUD-02- Returns an array of blob descriptors
Authentication(optional): Signed nostr event
DELETE /<sha256>BUD-02Authentication: Signed nostr event
PUT /mirrorBUD-04Authentication: Signed nostr event
HEAD /mediaBUD-05PUT /mediaBUD-05Authentication: Signed nostr event
PUT /reportBUD-09
Event kinds
| kind | description | BUD |
|---|---|---|
24242 |
Authorization event | 01 |
10063 |
User Server List | 03 |
License
Public domain.