Skip to content

esmaeil-ahmadipour/KMPMovies

 
 

Repository files navigation

KMPTemplate

The KMPTemplate is designed to help developers build applications for three platforms:

  • Android
  • iOS
  • Desktop
Please note that this app is still under construction, so things may break or change.

Screenshot 2023-02-27 at 9 50 39 PM

How it works?

KMPTemplate leverages the power of Kotlin Multiplatform and Compose Multiplatform to create a unified codebase for all target platforms. Here's how it works for each platform:

  • Android: Runs natively on Android devices.
  • iOS: Utilizes UIKit under the hood for seamless integration with iOS devices.
  • Desktop: Employs the Skia Library to provide native-like performance on desktop platforms.

Template Features

The KMPTemplate comes with several preconfigured features to accelerate your development process:

  • Version Catalogs
  • Compose Multiplatform
  • Koin for dependency injection
  • Ktor for networking
  • Kotlin serialization
  • Multiplatform image viewer

Is it production-ready?

KMPTemplate can be considered both production-ready and not production-ready, depending on your requirements. You can use the UIControllers generated by Compose alongside SwiftUI or UIKit to share the UI across platforms. For platform-specific features like camera and sensors, you can utilize SwiftUI or UIKit.

If you have any suggestions or find a bug, please add it to the issues.

Troubleshooting

MacOS on Apple Chip (M1/M2)

If you encounter the error 'pod install' command failed with code 1. run the following commands in the terminal:

sudo softwareupdate --install-rosetta --agree-to-license
sudo gem uninstall ffi && sudo gem install ffi -- --enable-libffi-alloc

kashif_mehmood_ kashif-mehmood kashif-mehmood

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 93.6%
  • Swift 4.0%
  • Ruby 2.4%