Kotlin Multiplatform
2.62K subscribers
84 photos
3 videos
407 links
Русскоязычный канал новостей о Kotlin Multiplatform
Download Telegram
Новая версия библиотеки Calf!
Появился calf-file-picker который работает и в JS и Wasm.
Live demo: https://calf-library.netlify.app/
Full changelog: https://github.com/MohamedRejeb/Calf/releases/tag/v0.4.0
https://proandroiddev.com/migrating-to-koin-annotations-in-a-multiplatform-project-1e83ba3b5988

Классная статья про использование Koin аннотаций, для проверок при компиляции 🤟
Почему надо использовать toolchains вместо jvmTarget в конфигурации билда 🧑‍💻
https://jakewharton.com/kotlins-jdk-release-compatibility-flag/

(надо бы свои визарды обновить ☺️)
штош: Джейк сдержал слово и аргументированно рассказал, почему не стоит использовать toolchain-ы в ваших билдах! Приглашаю к ознакомлению 🧑‍💻
https://jakewharton.com/gradle-toolchains-are-rarely-a-good-idea/
С новой моделью памяти и мультиплатформенными корутинами писать общий код стало гораздо удобнее и проще. В статье показано, что теперь создавать шаренные ViewModel не требует знания платформенных особенностей совсем 👍

https://habr.com/ru/companies/usetech/articles/802111/
Мультплатформенный DI фреймворк. 🌈
Быстрее Dagger 2 и удобнее Hilt. 🔥
С поддержкой compile time проверок графа зависимостей! 😻
С большим количеством интеграций к другим библиотекам и фреймворкам 🤝

Небольшая статья о том, как всю эту Koin радость использовать в своих проектах!

https://medium.com/koin-developers/getting-to-know-koin-annotations-ae20155d1b59
Обновил свой визард:
👉 генерится новый проект
👉 анимации в семпле
👉 из коробки используются ресурсы: иконки, текст и кастомный шрифт
👉 самые свежие версии всех компонентов
👉 самый актуальный билд конфиг (от гредл пропертей до советов Джейка В.)

https://terrakok.github.io/Compose-Multiplatform-Wizard/
Меня так вдохновили ваши лайки, что решил вместо сна допилить пару вещей ❤️
🧑‍💻 добавил WasmJs таргет (учтите, что большинство библиотек его не поддерживает)
🌈 добавил генерацию common Compose UI тестов
🥳 тесты можно запустить прямо на иОС или андроид симуляторе из терминала

P.S: js и wasm экспериментальные, поэтому там с тестами не так гладко. Есть еще над чем поработать 😉

https://terrakok.github.io/Compose-Multiplatform-Wizard/
Включить proguard на андроид просто, и скорее всего он сразу заработает как надо, потому что для этого много сделано внутри, например библиотеки публикуют свои правила для него, и это автоматически подхватывается при сборке. С десктопом все не так, и для каждой зависимости надо будет самому настраивать правила минимизации и обфускации. Но это того стоит!
Статья рассматривает эти проблемы и объясняет пути решения:
https://medium.com/@mike_21858/using-proguard-with-jetpack-compose-desktop-size-reduction-performance-gains-and-pain-481a014c6b0a
https://github.com/ShreyashKore/wonderous_compose

Я уже упоминал этот проект как-то раз. Очень красиво и работает на всех возможных платформах! (не надо только пробовать веб версию на мобильных устройствах)
А теперь там появились встроенные карты на всех платформах - стоит изучить 😉