spierce7
07/08/2023, 2:00 AMian.shaun.thomas
07/08/2023, 2:17 AMian.shaun.thomas
07/08/2023, 2:17 AMspierce7
07/08/2023, 3:20 AMNorbi
07/08/2023, 6:34 AMian.shaun.thomas
07/08/2023, 8:33 AMBig Chungus
07/08/2023, 8:49 AMBig Chungus
07/08/2023, 8:51 AMBig Chungus
07/08/2023, 8:52 AMBig Chungus
07/08/2023, 8:52 AMian.shaun.thomas
07/08/2023, 9:11 AMNorbi
07/08/2023, 11:29 AMBig Chungus
07/08/2023, 11:31 AMNorbi
07/08/2023, 1:29 PMspierce7
07/08/2023, 3:08 PMNote that some kmp libs result in substantial size bumps so you could try to avoid them or replace with js counterparts if size starts becoming concerning. e.g. kotlinx.serialisation or kotlinx.coroutineskotlinx.serialization and corotuines, along with ktor are likely auto includes for us. Avoiding Coroutines in our common code removes a thing we love about Kotlin.
Big Chungus
07/08/2023, 3:08 PMspierce7
07/08/2023, 3:09 PMBig Chungus
07/08/2023, 3:09 PMspierce7
07/08/2023, 3:10 PMAs for js interop, writing external declarations is tedious, but pretty straightforward once you get the hang of it.I've been trying to make Kotlin JS work in the browser since 2018. I'm pretty familiar with creating externals, and have several in our project for nodejs. I've learned to just embrace the dynamic for interop.
spierce7
07/08/2023, 3:12 PMExporting your code to js is a lot harder and limiting though, but can be avoided if your entire app is written in kotlinWe just attempted this. It was not a happy experience. We think this new targeted level of abstraction could be a win though, as long as we can convince our UI engineers to be ok with Compose HTML.
spierce7
07/08/2023, 3:13 PMDavid Herman
07/08/2023, 4:23 PMspierce7
07/08/2023, 4:24 PMDavid Herman
07/08/2023, 4:25 PMDavid Herman
07/08/2023, 4:26 PMDavid Herman
07/08/2023, 4:26 PMDavid Herman
07/08/2023, 4:27 PMspierce7
07/08/2023, 4:34 PMDavid Herman
07/08/2023, 4:35 PMspierce7
07/08/2023, 4:36 PMDavid Herman
07/08/2023, 4:36 PMspierce7
07/08/2023, 4:36 PMDavid Herman
07/08/2023, 4:37 PMDavid Herman
07/08/2023, 4:38 PMSo at build time it's generating the static page for initial load?
Yeah, although outside of initial appearance, all pages are essentially the same. They all contain the seed for your full site.
David Herman
07/08/2023, 4:39 PMDavid Herman
07/08/2023, 4:42 PMspierce7
07/08/2023, 4:50 PMDavid Herman
07/08/2023, 4:52 PM