IMHO WebDAV with a few extensions handled in the HTTP headers is what we need.

We don't need an online held-open protocol, a stateless request-response is sufficient.

The WebDAV PROPFIND/PROPATCH being in XML is dumb but usable for applying tags, and HTTP headers for certain things like 'content-type', 'range', etc, all well specified already.

We would want to be able to authenticate and to set/specify permissions (on get, put, patch, delete, but also rename, setperms, lock, delete a prop)

Reply to this note

Please Login to reply.

Discussion

What? It's already done?!

of course it is, this is nostr!

😂

zapstr.live uses this for paid tracks

I have a modified nosdav server listening for zaps on paid tracks; when the right zapper zaps the track, the pubkey is whitelisted for downloads of that event's media

If I had paid more attention instead of being head down in my own project, I would have already known.

if someone had already started nostr optech it would be easier to keep up 😅

Holy fuck, and it has a spec, NAVs, and it actually looks like what I was thinking except it's been actually thought out.

I should have known I wouldn't be the first person to think of that.

nostr:npub1melv683fw6n2mvhl5h6dhqd8mqfv3wmxnz4qph83ua4dk4006ezsrt5c24 has thought about everything we will think in the next five years

I gotta zap that bastard

I just noticed there is a calendar app, crazy

I actually made that in an hour yesterday. It saves it as simple json for now. I was looking into ical / caldav support but got distracted. But hey, it's all open source.

- JSON instead of XML - done

- stateless request - done

- http headers - done

- range requests - todo

- GET - yes

- PUT - yes

- DELETE - todo

- auth - done

- patch - interesting one, which to use, I think maybe json patch or linked objects, or n3 patch

- lock - todo

- setperms - partially done, more todo

- access control - todo

Basically cherry picked the best things from : https://solid.mit.edu/

Nice. Glad it's JSON not XML. I meant PATCH as in the HTTP verb.

Tried to zap you but Wallet of Satoshi told me there was some problem with the LNURL

Solid is Tim Berners-Lee right? Haven't heard that for a while.

Now I see you on the solid.mit.edu page. 👍

Yes, I worked with TimBL on it, for quite a while and it's becoming a w3c REC hopefully in the next 1-2 years, but it's not yet stable. Nostr is stable, working today, so I can port the best parts over to nostr.

Only the best for nostr. 😁

🤝

What the fuck am I doing in between all these geniuses??

Somehow I thought HTTP PATCH was well defined, like byte offsets into a binary blob or something.[1] I don't know why we would need PATCH.

nostr:npub1melv683fw6n2mvhl5h6dhqd8mqfv3wmxnz4qph83ua4dk4006ezsrt5c24

[1] This is the first time I said something stupid on nostr.[2]

[2] Please don't double check.

Patch is useful to send less over the wire and for rapidly changing documents, also for large documents

Solid went for n3 patches which are adding or deleting items associated with a URI, which is the linked data way

JSON Patch is based on Json paths and trees

Linked Objects is a simpler version that ties values to uris

An important aspect of patch is that the data in a file is not the same as a filename, and can contain many things or concepts. So patching a file is closely coupled to the transport, patching the data is transport agnostic, and therefore, more decentralized.