# Creating a simple Kotlin Multiplatform project based on moko-template

DevFeed: [Creating a simple Kotlin Multiplatform project based on moko-template](<https://devfeed.tech/articles/creating-a-simple-kotlin-multiplatform-project-based-on-moko-template-24581.md>)

Original publisher: [Read original article](<https://medium.com/icerock/creating-a-simple-kotlin-multiplatform-project-based-on-moko-template-2dd87d020bbd?source=rss-2f461fccc401------2>)

Author: IceRock Development

Published: 2019-11-08T19:52:31Z

Content type: tutorial

Language: en

Sources: [Stories by IceRock Development on Medium](<https://devfeed.tech/sources/stories-by-icerock-development-on-medium.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Template](<https://devfeed.tech/topics/template.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Android Studio](<https://devfeed.tech/topics/android-studio.md>), [cocoapods](<https://devfeed.tech/topics/cocoapods.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Binance](<https://devfeed.tech/topics/binance.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-studio](<https://devfeed.tech/tags/android-studio.md>), [api](<https://devfeed.tech/tags/api.md>), [build](<https://devfeed.tech/tags/build.md>), [building](<https://devfeed.tech/tags/building.md>), [cocoapods](<https://devfeed.tech/tags/cocoapods.md>), [files](<https://devfeed.tech/tags/files.md>), [github](<https://devfeed.tech/tags/github.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [ios](<https://devfeed.tech/tags/ios.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [mobile-development](<https://devfeed.tech/tags/mobile-development.md>), [multiplatform](<https://devfeed.tech/tags/multiplatform.md>), [project](<https://devfeed.tech/tags/project.md>), [repository](<https://devfeed.tech/tags/repository.md>), [the-result](<https://devfeed.tech/tags/the-result.md>)

## AI overview

A tutorial for creating a simple Kotlin Multiplatform application for Android and iOS from the moko-template. It covers the required tools, the template's shared library and modules, cloning the generated repository, testing builds, and setting application identifiers, names, and icons. The example application uses the GIPHY API to display GIF files with native Android and iOS interfaces.

## Source excerpt

1. Intro In this lesson we will cover developing small application for iOS and Android using Kotlin Multiplatform based on moko-template. Tools We will need: Android Studio 3.4.0+ (do not use 3.5.1 version, cause there is a bug is breaking MPP project); Xcode 10.3+; Xcode Command Line Tools (xcode-select --install); CocoaPods (sudo gem install cocoapods); JDK -- требуется для запуска gradle из Xcode build phase. The Result As the result of GiphyApp lessons you will get an application to view gif files using GIPHY API. UI of this application will be completely native, player of gif files will make using native libraries glide for Android and SwiftyGif for iOS. 2. Create the project based on moko-template For creation we will use project template from moko-template. The project template already has preconfigured builds of iOS and Andoroid application with shared library and you will save the time to integrate shared library to iOS project on iOS platform, to configure Kotlin Multiplatform modules and dependencies (using mobile-multiplatform-gradle-plugin you can make configuraion is simplier). The project template has a sample of several features as well as. Use this template To use this template you have to go on GitHub репозиторий шаблона moko-template and press a green button Use this template. As the result, you create a new repository according to the last commit of master branch of moko-template project. After succefull creation you should clone this rep: git clone <git url of repo>. 3. Test build To be sure that start state is correct, will run the both applications. To do this: on Android: open root repository directory in Android Studio, wait while Gradle Sync will finish, and run android-app as regular application. on iOS: install project's CocoaPods (in directory ios-app run a command pod install, and after this open ios-app/ios-app.xcworkspace in Xcode and press Run for running application. Building of Kotlin/Native can take a time (it will start automatica