logoalt Hacker News

doolstoday at 1:12 AM0 repliesview on HN

Well the thing is that the server code is basically Java, and the only bad thing about Java is writing it but since I don’t have to write it, it’s actually a really solid option. Then you have shared UI (don’t use WASM for web though it’s terrible, I use React for the web frontend) but you can switch to some or all native components when you need to on any platform. So for example I needed native components for secure storage and passkeys and did that by mixing in some swift on iOS and using a JNI native bridge on macOS and Windows.

I created a standardised bootstrap for all our projects here starting from the KMP wizard:

https://bitbucket.org/workingsoftware/kmpbootstrap/src/main/

The reason it the bootstrap has all platforms included is that adding in iOS, android and desktop after you have already created the project is a bit of a hassle compared with just always having the same structure even if you only want to use web.

Then you can easily add on native apps later if you like.