This is awesome!
I’ve been working on something very similar to this with a few differences
We use KMP for parts of our frontend web client too, and Ktor is just way too heavy in JS so we had to build an interface even if we used Ktor on native
Additionally, I'm trying to build at a level that can encapsulate both the network and db (since we don’t want to introduce an entire second persistence layer to our brown-field app until we’re ready to do a full migration)
Converting to a Flow instead of a suspend fun isn’t too bad
Paging has been something that’s a bit tricky to handle though