I’ve seen the blossom spec on GitHub - is there a reference implementation of a managed server?

Reply to this note

Please Login to reply.

Discussion

1. Best production ready implementation is probably: https://github.com/lovvtide/satellite-cdn

2. Reference implementation by hzrd194: https://github.com/hzrd149/blossom-server

3. My proof of concept that runs on CloudFlare Free tier for personal use: https://git.v0l.io/florian/cf-worker-blossom-server

Why is it based of Cloudflare? Can't a different S3 compatible provider/tool be used?

1 and 2 should run with any S3 compatible storage. It's not enough to just store the data though - there is also some logic (docker based server) and a database (for ownership, payments..) required. So you need a place to run those as well.

I wanted to build (3) this on serverless components without having to run a docker container and a database anywhere. That's why I implemented that Cloudflare based project and it's APIs are not directly compatible.

This could be done similiarly on AWS mit Lambda Functions, Dynamo DB and S3.

Yeah I understand that it is not just S3. I was just wondering about swapping the object storage layer for Minio or StorJ.

Yeah you can configure your own s3 storage in the config: https://github.com/hzrd149/blossom-server/blob/master/config.example.yml#L37

cloudflare is decentralised?

NO it's very much centralized but it is my personal server.

Having multiple different storage locations makes it decentralized.

And building tools to move / distribute your data.

rofl, that’s the best repo name ever. familiar with the naming convention but that’s a winner.

I wasn't the one to come up with the "blossom" name. but it turns out to be perfect, has a recognizable icon and rhymes with almost anything

It was the name of a heart attack inducing appetizer that was served at Chili’s going back to the late 80’s