Hi folks ! I’m a CS student in the 6th semester at...
# multiplatform
a
Hi folks ! I’m a CS student in the 6th semester at HEIG-VD. I’ve been working on my bachelor thesis for the last weeks, and thought it might be interesting to share, since it’s a KMM project. I’ve created an online collaborative Markdown editor, using Kotlin/JS for the frontend and with a replication server in Kotlin/JVM. The editor uses some CRDTs to sync text across the clients. Messages are Protobuf-serialized with
kotlinx.serialization
, and sent / received through websockets with Ktor. An interesting challenge was to design a nice abstraction layer around CRDTs with first-class support for coroutines and flows (in order, for instance, to collect editor state changes through a
StateFlow
). My thesis is ending soon, but I’d love to get some feedback on my work (especially if you’re interested in CRDTs and distributed systems) and my usage of KMM, so I can integrate it in the project ! The project is available on Github : https://github.com/markdown-party/mono Feedback (via email or Slack) : alexandre.piveteau@heig-vd.ch
🙌 4
🙌🏼 1
JS 1
👍 4
K 1