Decompose
kotlin-wrappers
Our great sponsors
Decompose | kotlin-wrappers | |
---|---|---|
20 | 16 | |
1,931 | 1,294 | |
- | 1.2% | |
9.2 | 9.9 | |
10 days ago | 2 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.
Decompose
-
What do you use for compose navigation?
I use Decompose, although I also have a kmp project which that supports. I find the compose extensions providing a very easy API when integrating with compose.
-
Anyone here who uses compose-multiplatform for desktop apps, what’s your feedback?
For one of our apps we used https://arkivanov.github.io/Decompose/ for navigation. It is mentioned in the Compose Multiplatform repo, but we found it pretty obscure to use and it has some confusing concepts built in.
-
Does View Model works with Compose?
View model is Googles recommended approach, but there are other approaches out their you can use like decompose
-
KMM: writing Kotlin API for Swift - 7 things you need to know.
When you are building your app in KMM, sometimes you need to pack some libraries along with project files in the shared module. For example if you are using Decompose you need to access it's Value class in Swift.
-
Single Activity Apps: Fragments vs Views in 2022
I don't have much experience with conductor, so I'm curious what your concerns about lifecycle is lacking compared to fragments? But if your team already knows that framework I might just stick with views over fragments. I see there is a compose integration if you do ever plan on picking that up with conductor. Otherwise compose makes fragments obsolete and your team already knows conductor. I do agree the navigation story in compose is not mature especially after jetpack compose navigation. But there are other 3rd party libraries like compose destinations or decompose, but would be nice to see something better 1st party.
-
Which navigation library for compose do you suggest?
I personally like decompose for its testability, clear separation of concerns, and apis for compose animations. Plus it's multiplatform so you can use it for other kmp targets.
-
Is MVI way to go for new applications with compose
Full discretion, all my new apps are built using mvi with MVIKotlin and decompose for the compose extensions for navigation animations. A sample project I have built with that architecture can be found here.
-
Decompose VS appyx - a user suggested alternative
2 projects | 30 Aug 2022
-
Appyx - Application mechanics for your Android apps, built on top of Jetpack Compose (Navigation)
Check out Decompose, it's multiplatform - https://github.com/arkivanov/Decompose
-
Received a job offer letter with "All inventions developed by you during your period of employment with the Company will be deemed as the property of the Company." Its a Web dev job. How would this affect my mobile app dev hobby. I occasionally publish apps/games to PlayStore.
Decompose
kotlin-wrappers
-
How can I learn Kotlin web development?
If you want something more standard, I'd look at Kotlin Wrappers and look at examples of using react - https://github.com/JetBrains/kotlin-wrappers
-
Create any kind of app with Kotlin
Kotlin wrappers for JS.
-
[Kotlin/JS for React] Do error boundaries exist?
The only reference I can find to an error boundary in Kotlin React is at QueryErrorResetBoundary.kt in the kotlin-wrappers repository. Would any of you know anything about this?
-
[Typesafe HTML DSL] Is there a way to use the "%" unit in CSS?
Yes! Interesting that it isn't defined in the Length.kt file (that's where I was looking for it) and is instead in its lonesome, but I guess it makes sense as it's not actually a length value. Thanks for the help!
-
React Storybook for Kotlin/JS: Basic set up
plugins { kotlin("js") id("com.github.node-gradle.node") version "3.4.0" } kotlin { js(IR) { // let's rename it to more reusable as under that name we will access it in our boilerplate code moduleName = "stories" // browser also works fine here, we just need it for compiling purposes as of now nodejs {} // add a startup script to our package json compilations["main"].packageJson { customField( "scripts", mapOf("storybook" to "start-storybook -p 6006 -c $projectDir/.storybook --ci") ) } binaries.executable() } } tasks.named("build") { dependsOn("assemble") dependsOn("copyJsStories") } tasks.register("copyJsStories") { dependsOn("developmentExecutableCompileSync") from("$projectDir/src/main/js") into("$buildDir/compileSync/main/developmentExecutable/kotlin") // flatten all files to appear on one level eachFile { if (isDirectory) { exclude() } path = path.replace("/", ".") } } tasks.register("copyPackageJson") { dependsOn("build") from("$buildDir/tmp/publicPackageJson/package.json") into("$projectDir") } tasks.register("start") { dependsOn("build") dependsOn("npmInstall") args.addAll("run", "storybook") } tasks.named("npmInstall") { dependsOn("copyPackageJson") workingDir.set(file("$projectDir")) inputs.file("package.json") } dependencies { // dependency to the project with components implementation(project(":app")) // react dependencies to put on package.json explicitly // can resolve the actual versions on https://github.com/JetBrains/kotlin-wrappers implementation(npm("react", "^17.0.2")) implementation(npm("react-dom", "^17.0.2")) implementation(npm("react-router-dom", "^6.2.2")) // storybook specific dependencies implementation(npm("@storybook/builder-webpack5", "^6.5.9")) implementation(npm("@storybook/manager-webpack5", "^6.5.9")) implementation(npm("@storybook/node-logger", "^6.5.9")) implementation(npm("@storybook/preset-create-react-app", "^4.1.2")) implementation(npm("@storybook/react", "^6.5.9")) }
-
How to explain a novice recruiter how to find a good Kotlin dev?
kotlin js https://github.com/JetBrains/kotlin-wrappers/tree/master/kotlin-react Multiplatform etc.
-
Do you use kotlin/js?
From my experience if you're truly trying to interop with JavaScript code that is already out there on npm, you better hope there is a library that already wraps it like kotlin wrappers. Otherwise you would have to write a wrapper library yourself or use dukat to convert typescript definitions to kotlin (which I have never had the best luck converting but maybe it got better?).
-
Kotlin Bintray Bad Gateway
Everything moved to central a long back - https://github.com/JetBrains/kotlin-wrappers
-
[AskJS] I have spent 7 years creating a JavaScript alternative, would love to hear your feedback
It's still pretty finnicky to configure and it hasn't emerged from alpha yet, so its future isn't exactly secure, but I'm hopeful as they appear to be investing a lot of resources into it and adjacent projects, e.g. the kotlin-react library.
-
Kotlin Team AMA #3: Ask Us Anything
We already have a battle-tested integration with react (it's used inside jetbrains.space) -- https://github.com/JetBrains/kotlin-wrappers And, take a look at docs and hands-on.
What are some alternatives?
voyager - 🛸 A pragmatic navigation library for Jetpack Compose
xmlutil - XML Serialization library for Kotlin
PreCompose - Compose Multiplatform Navigation && State Management
compose-multiplatform - Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.
Appyx - Model-driven navigation + UI components with gesture control for Compose Multiplatform
kotlindl - High-level Deep Learning Framework written in Kotlin and inspired by Keras
koin - Koin - a pragmatic lightweight dependency injection framework for Kotlin & Kotlin Multiplatform
swift-evolution - This maintains proposals for changes and user-visible enhancements to the Swift Programming Language.
Kotlin-Multiplatform-Libraries - Kotlin Multiplatform Libraries. Welcome PR if you find or create new Kotlin Multiplatform Library.
KorGE - KorGE Game Engine. Multiplatform Kotlin Game Engine
compose-samples - Official Jetpack Compose samples.
mobx-state-tree - Full-featured reactive state management without the boilerplate