Oddbean new post about | logout
 i fucking love blossom on my #haven relay

please clients why are you taking so long to implement this amazing tech, should be very easy and fast to make such an uploader 
https://relay.utxo.one/362f318256af800a81d713736fa797c385ceb06a6668f2a549a602bf3e9d02ab.png 
 that's the real deal! 
 Olas shipped with Blossom from day 1; just makes sense


https://nostrcheck.me/media/fa984bd7dbb282f07e16e7ae87b26a2a7b9b90b7246a44771f0cf5ae58018f52/5dfde8d46183c2bc9262d448a217c82b82b4941b171f96d65182d9f377943db4.webp 
 Please add NostrMedia.com ser 🙏🥹 
 Anyone can add their own; this is just my own blossom list 😅 
 @quentin is working on adding some media-related features to Olas, perhaps there’s a space to suggest/discover some blossom servers on this section of the app 
 Ohhh I see now. And it already prefilled mine. I guess it was saved on the relays, nice. Yes, if you offer user some default options, feel free to add NostrMedia.com 😏

Olas is looking great. Thanks for fixing the dark mode 🤙 
 FYI I just got "500 Internal Server Error" when I tried to blossom upload to nostrmedia.com 
 Ah what. Mind trying again, I am currently monitoring. Thanks! 
 Just did it again.  If I'm doing something wrong, you should change it to a 4xx error. 
 Oh, I see. Are you sending Content-Type in the request? It seems to be returning null. 
 If you send the Content-Type header in the request it should work 👍  
 Gossip doesn't know the content type.  It just opened the file and sent it.  I suppose I could add content type sniffing.  But anyhow you should change that to a 4xx error 
 Hmm, somehow noStrudel, 0xchat, Olas, etc  are all sending the content-type header some way 🤔  
 Yea it's 5XX'ing due to no handling of missing content-type header haha. I will add it. But, maybe see how noStrudel handles it? 
 It mentions passing the header in the bud: https://github.com/hzrd149/blossom/blob/afa1290a6aa91fb5b371ae9d346d835cb0231f83/buds/06.md 
 Whoops, that's for using HEAD, but also applies to the PUT for /upload

Let me know if you think you can pass this header in the request. Otherwise, I could see if I can infer it through extension. 
 Primal hosts a Blossom instance?
Huh. TIL. o.o 
 What’s Olas? Excuse me for my ignorance 🙏🏻🧡 
 An Instagram like client for iOS and android 
 help a #noob #nostrDev ... what is Blossom? and do you happen to have a github that might show how it works?  I'm looking to learn ... and motivated to build with it from day 1 - trying to make my 1st   #NostrFirst #mobileFirst PWA 
 Blossom is a simple protocol for storing and hosting individual files on servers https://github.com/hzrd149/blossom

The files are addressed by their sha256 hash so they can be re-uploaded or moved and still have the same id 
 Oh awesome. Thank you 
 For web clients just use blossom-client-sdk by @hzrd149 it will literally take you minutes to implement blossom.

nostr:nevent1qvzqqqqqqypzpckv7l8jqspl8u4y54dn9rcduwlrs4v2040nxce0m2h0cunvrj8tqqsrpeyf36k7tw6rrn87dfpqqgv4uwq8zhe8ffur897cze83znxk80gw2lpjy 
 Blossom will be in the next version of coracle (finally) 
 It it helps I've made a TS package for clients wanting to implement blossom https://github.com/hzrd149/blossom-client-sdk 
 sdk looks very clear and simple, and I will also make jumble support blossom. 
 Yaaaas. C'mon nostr:nprofile1qqs24yz8xftq8kkdf7q5yzf4v7tn2ek78v0zp2y427mj3sa7f34ggjcpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tcppemhxue69uhkummn9ekx7mp0qyg8wumn8ghj7mn0wd68ytnddakj703s8dt 🥹 
 🌸 
nostr:nevent1qvzqqqqqqypzpckv7l8jqspl8u4y54dn9rcduwlrs4v2040nxce0m2h0cunvrj8tqytkummnw3ez66tyvgaz7tmrv93ksefdwfjkccteqqsrpeyf36k7tw6rrn87dfpqqgv4uwq8zhe8ffur897cze83znxk80g5srdph 
 Blossom is left curve genius. 
 I'm retarded, and I still get that. 🥳 
 ask nvk about why there is a mentality of retardation in the nostr client dev community

you think i'm salty for fun? sure you do

i'm sure your fast fingers don't compensate for your slower ability to think about what is going on tho, just sayin 
 What products have you shipped? 
 I'm doing it now.  Just ironing out the kinks. 
 👀🧡 
 So, we abandoning all the NIPs and just go with anything that catches on then? 🤔 
 Abandon the bad ones yes 
 Blossom has no NIP. Which one is bad one? 
 Nip96 
 What’s bad about it? It has all the functionality of blossom and standardized 🤔 
 More robust and extendable, sha256 filenames means you can find identical files across mirrored servers - nip96 is just an upload API basically  
 You can do the same, plug the sha256 as the name and boom, other server may have it. I get it, instead of improving what we have we just want to abandon all the effort of people (because it’s other people) and just jump on a new thing. Yeah, this will definitely be sustainable and gonna burnout anyone. 🫡 
 Sorry, Open Office. Libre Office is king.