I like the idea of shared logic so you can also have shared architecture. In this case, kotlin multiplatform to do the networking, db, data logic, etc. Have a library that implements flutter's channel feature, and call into that from flutter. Then you're not splitting your logic up too much and just using flutter for UI.