# Introducing Kotlin Multiplatform in an existing project

DevFeed: [Introducing Kotlin Multiplatform in an existing project](<https://devfeed.tech/articles/introducing-kotlin-multiplatform-in-an-existing-project-25556.md>)

Original publisher: [Read original article](<https://www.marcogomiero.com/posts/2021/kmp-existing-project/>)

Author: Marco Gomiero

Published: 2021-02-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Posts on Marco Gomiero](<https://devfeed.tech/sources/posts-on-marco-gomiero.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [multiplatform](<https://devfeed.tech/topics/multiplatform.md>), [Library](<https://devfeed.tech/topics/library.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [library](<https://devfeed.tech/tags/library.md>), [multiplatform](<https://devfeed.tech/tags/multiplatform.md>), [structure](<https://devfeed.tech/tags/structure.md>)

## AI overview

A practical guide to introducing Kotlin Multiplatform into an existing project. It recommends starting with small, gradually extractable pieces such as DTOs, data models, boilerplate, utilities, or analytics helpers, then validating the approach before migrating more code. It also outlines a multi-repository architecture for the KMP library and platform projects.

## Source excerpt

After discovering a new interesting technology or framework, you will probably start asking yourself how to integrate it into an existing project. That's because, the possibility to start with a blank canvas is rare (not impossible, but rare). This is also the case for Kotlin Multiplatform (I'll call it KMP in the rest of the article). When starting a new blank KMP project it is easier to have a mono-repo structure like this: