Fireproof uses a 2-layer CRDT (the inner CRDT is encrypted). We also use prolly-trees for indexing. You can read more about the storage engine here: https://fireproof.storage/posts/remote-access-crdt-wrapped-m...
Edit to add: we extracted the outer blockstore so anyone doing immutable data or ipfs can take advantage of our sync connectors. https://www.npmjs.com/package/@fireproof/encrypted-blockstor...