top | item 45741302

(no title)

gagik_co | 4 months ago

This could be exactly what I need, AES GCM field-level encryption support is a godsend. Unfortunately seems like it’s planned and not ready. If I hadn’t just finished rolling out a sync feature built around the Matrix protocol, I would have loved to properly try this out.

discuss

order

jtesp|4 months ago

i've been vetting matrix. what sold you? what are you using it for? seems like it is resource intensive and still a bit rickety. you using yjs?

gagik_co|4 months ago

My app is for chat-based notes[1] and I have been wanting E2E local-first sync on it for a while. Switched from Realm to SQLite after it was deprecated but never found a good non-niche DB SDK for it on Flutter. Tried to handroll sync + AES-GCM encryption with Supabase Realtime and it kind of worked but I knew managing encryption was going to be hell and also wanted collaboration features. Matrix was built for chat, and at some point I read someone call it basically a graph sync engine & potentially supporting general texting with other clients also seemed like a cool bonus.

That said, adopting it (even partially) was/is a big mess, there's a thousand corner cases with key exchange, etc. so it's really a big commitment, especially if there's no existing user-friendly SDK for it.

I'm not using yjs (yet), just going to more basic event sourcing that is essentially last-write wins but that's a direction I want to explore in the future.

[1] https://tetrify.com/

kingjimmy|4 months ago

I'm very curious on the use case you need AES GCM field-level encryption.

gagik_co|4 months ago

Zero-trust syncing of notes data. Honestly an overkill for the purpose but more of an ideological and educational goal.