Based on the dependencies, looks like you are using IndexedDB under the hood. Any interest in a peer-to-peer replication capability using IndexedDB and peerjs or perhaps just libp2p since you are already ipfs friendly. I understand the use of Filecoin to facilitate replication; however, without elaborating, it does seem there would be a use case for direct replication.
async upload to web3.storage to provide the blocks as a fallback
peerjs or similar to send car files to topic subscribers which they drop into their local indexedb (optional if you lean on web3 storage fallback for nonlocal blocks, but remote block get will be slower than local car)
peerjs to send clocks around. The clock head is all you need to pull remote state, assuming you can access the blocks.
User sends clock to cloud, cloud returns index root id
User can query index root id remotely
Either by running the query crawler in client
Or by sending the query to the server
Query response includes proof in both cases, if you want to verify them you can
Proof should be the same when index is queried across two replicas
Sharing db clock
User sends clock to friend, along with “ucan update” friend sends back new clock along with “ucan update”. The UCAN allows the holder to append to the clock in a way all replicas will respect.
Based on the dependencies, looks like you are using IndexedDB under the hood. Any interest in a peer-to-peer replication capability using IndexedDB and peerjs or perhaps just libp2p since you are already ipfs friendly. I understand the use of Filecoin to facilitate replication; however, without elaborating, it does seem there would be a use case for direct replication.