Splitties
compose-multiplatform
Our great sponsors
Splitties | compose-multiplatform | |
---|---|---|
3 | 96 | |
2,448 | 14,664 | |
- | 2.0% | |
7.8 | 9.6 | |
7 months ago | 4 days ago | |
Kotlin | Kotlin | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Splitties
-
Useful utilities, extensions, base classes
https://github.com/LouisCAD/Splitties don’t use it because I think it leads to dependency bloat but there you go
-
Future of single activity with multiple fragment!!!
I've successfully used single activity with multiple fragments in the past. In one app we even dropped the fragments and inflated custom views (fueled with splitties: https://github.com/LouisCAD/Splitties when compose was in early stage) with screens logic implemented as suspendable functions.
-
Kotlin Team AMA #3: Ask Us Anything
XML is not the only way to use Android Views. With Kotlin, you can get pretty compelling results: https://github.com/LouisCAD/Splitties/tree/main/modules/views-dsl#ide-preview
compose-multiplatform
-
Understanding file associations in JVM apps
So, to add file associations, we need to be able to pass both the .properties file and the --file-associations option. At the time of writing this article, the org.jetbrains.compose plugin doesn't provide such a mechanism. There is an open issue on GitHub that describes a possible workaround, which, unfortunately seems to not work on macOS.
-
Compose cannot be used for large amount of text
JetBrains has a simplified example of a general-purpose Compose text viewer here: https://github.com/JetBrains/compose-multiplatform/blob/master/examples/codeviewer/shared/src/commonMain/kotlin/org/jetbrains/codeviewer/ui/editor/Editor.kt
-
[Compose Multiplatform] Disable a button according to a list of flow values
![image](https://github.com/JetBrains/compose-multiplatform/assets/1382241/6747a3f6-53b9-43da-8d97-ab1e1e31170f)
- Compose Multiplatform 1.5.0-beta01
-
Timeline with Scrollbar in LazyColumn Compose
Compose for desktop has a scrollbar component available. You probably can't use that directly on Android, but you could probably steal most of its code.
- How good is Compose Multiplatform in production especially in creating Desktop apps?
-
Kotlin for a desktop App
My company uses https://github.com/JetBrains/compose-multiplatform to make a desktop app in Kotlin. It's amazing and fantastic. It's basically as mature as using Kotlin in an Android app.
-
Kamel v0.5.0 released with Kotlin Native and JS support
Kamel is an asynchronous media loading library for Compose Multiplatform.
-
Ksoup - Kotlin Multiplatform HTML Parser ⚡
Kotlin Compose Multiplatform is the way to do Desktop apps. https://github.com/JetBrains/compose-multiplatform
-
JetBrains Compose is now Compose Multiplatform
As for missing controls, a common one is a grid. They have built in grids, but again they are built for Android and don't make any sense in a desktop app. There is no simple way to create an Excel-like Data Grid like you might see in Windows Forms, although it can be done. https://github.com/JetBrains/compose-multiplatform/issues/344.
What are some alternatives?
kable - Kotlin Asynchronous Bluetooth Low-Energy
javafx-examples - A large collection of JavaFX examples demonstrating basic + advanced features of JavaFX.
multiplatform-compose - A demo to show usage of Jetbrains Compose in Android and iOS.
tornadofx - Lightweight JavaFX Framework for Kotlin
kotlin-multiplatform-libsodium - A kotlin multiplatform wrapper for libsodium, using directly built libsodium for jvm and native, and libsodium.js for js targets.
skiko - Kotlin MPP bindings to Skia
kotlin-libui - Kotlin/Native interop to libui: a portable GUI library
javafx-gradle-plugin - Gradle plugin that makes it easy to work with JavaFX 11+
kotlin-wrappers - Kotlin wrappers for popular JavaScript libraries
Jetpack-Compose-Playground - Community-driven collection of Jetpack Compose example code and tutorials :rocket: https://foso.github.io/compose
kotlinx.html - Kotlin DSL for HTML
tornadofx2 - TornadoFX 2.0