Hi, I'm new here. If someone needs Compose Desktop...
# compose-desktop
l
Hi, I'm new here. If someone needs Compose Desktop in a native window or Compose in GraalVM native images. Check this repo: https://github.com/letmutex/compose-native-host I don't have much to talk about it because I vibe-coded most of the parts. Take a look if you need something that feels better than AWT Compose on macOS.
u
Hello, I don't think replacing AWT is really feasible in production. I'm actively working on Graalvm support with Compose, and I expect to release an Alpha version within a week or two. For now, it's experimental. I hope to be able to deploy an app to production for thousands of users within a month or two. https://nucleus.kdroidfilter.com/graalvm-native-image/
👍 1
l
@אליהו הדס This looks cool. AWT just feels too bad for me. I suspect that JetBrains is also using some non-AWT Compose host for their Air app. I really hope they can open source it someday.
u
I think it remains much more stable than a vibe coded swift implementation 🙂 I recommend you try the jewel sample in the Nucleus assets that uses GraalVM, and you'll see that it works very well.
I'm not saying AWT is ideal, certainly not, but I'm just saying it works, and I don't think it's feasible to replace it as a side project, but yes, if you manage it, I'm with you.
💯 1
https://github.com/JetBrains/kotlin-desktop-toolkit/ JetBrains is replacing it; the code is open source.
🤩 1
l
Damn. I never knew about this. I should never trust GPT for research.
s
Afaict Air is using the kotlin-desktop-toolkit instead of AWT
u
air use compose? or it's something else ?
s
They use Noria
That's a bit outdated since they don't use AWT anymore but Air uses Noria and runs on the kotlin-desktop-toolkit now, as the repo readme says 🙂
u
It's a real shame they don't use Compose, a real shame for us !
If they used it, they would invest more in compose 😆
s
The main reason is that Noria predates Compose by a few years (internally to JetBrains)
u
Yes, I understand that, but you have to migrate to Compose Desktop because Compose Desktop is the next Electron, or just because Compose is so cool 😁
s
I'm pretty sure it's a non-trivial migration or they'd have already done it 😉
1
s
That's new to me but also exciting!
s
Noria is very much not a CMP fork, that phrasing is misleading
☝️ 1
s
also "When we started working on Fleet, however, Jetpack Compose didn’t exist, and thus Noria was born.". Noria is closed source so it's hard to tell what it really is but the approach sounds pretty similar, declarative UI with a tree structure where only necessary parts get recomposed, incremental compution like Noria calls it
s
Yes, Noria is a reactive UI framework and these days API-wise it looks quite similar to Compose. But there are still fundamental differences between the two (e.g. how focus is dispatched)