# Ktor Plugin for Database Migration This plugin enables code-based database migrations in Ktor using [Kotlin Database Migration](https://git.infendro.com/Infendro/kotlin-migration). ## Installation Add the following to your `build.gradle.kts`. ```kotlin repositories { maven("https://git.infendro.com/api/packages/Infendro/maven") } dependencies { implementation("com.infendro:ktor-migration:1.0.2") } ``` ## Usage ```kotlin import com.infendro.ktor.migration.Migration import io.ktor.server.application.* import org.jetbrains.exposed.sql.Database fun Application.configureDatabase() { // connect to a database Database.connect( url = , user = , password = , ) // install the plugin install(Migration) { // create a migration migration("initial") { // execute code to migrate the database } } } ``` ## How It Works * Each migration is identified by a unique name. * Migrations are executed in the order they are declared in. * Executed migrations are tracked in a database table and skipped on subsequent runs.