completely new to kmm/compose for ios. but im watc...
# compose-ios
c
completely new to kmm/compose for ios. but im watching this video because im interested. I noticed that sebastian ran the
kdoctor
command and he starts to explain that you needs cocoapods enabled. Is that the default with kmm + ios? I thought SPM was the goto dependency management tool on ios?

https://www.youtube.com/watch?v=5_W5YKPShZ4&t=133s

👍 2
a
As an Android dev that only did a course on iOS dev, I don't what is the current goto dependency management tool. But our iOS devs use cocoapods and we export our KMM libs to them as a single framework thru cocoapods, perhaps because we just follow the docs https://kotlinlang.org/docs/native-cocoapods.html 😄
c
interesting. ive worked on a cocoapods based project like a year ago. just for like a few weeks to help out a team member.
cocoapods was the worst. and we ended up just migrating to spm, and then everything worked fine. lol
a
Afaik, SPM is relatively new, not sure if that is a factor.
l
Kotlin doesn't interop with pure Swift. Not all Swift Packages are pure Swift, but I think that was a factor as to why there's no first-party spm gradle plugin (there are some third party ones, though).
a
that really makes sense
a
Not necessarily. I'm able to use Compose for iOS without Cocoapods.
l
Cocoapods aren't required to build a KMM app (unless you need cocoapod dependencies), but I think kdoctor mentions it because it's a global config tool. It doesn't know about an individual project, so it tells you to enable cocoapods in case a project needs the feature.
🥲 1
Also, up until 1.5.0-beta01, cocoapods were required in compose for resource handling. There's a change in the latest beta to allow resources on iOS with a plain framework. It's good to have set up in case you need it, but you won't always need it.
s
I don’t think resource management was the reason why cocoapods is required in Compose. Currently there is no oficial way to handle resources in KMM projects, there are alot of libraries that does that for KMM in some way like moko resources that is the most advanced one I know and also supports Compose Multiplatform. The point is, the .framework or .xcframework will never come with Resource files unless you have a plugin that does that for you, this is the case for the new changes in Compose plugin. But still it does not support multimodule setup and that is a no go for us.