A decentralized music tracking and discovery platform built on AT Protocol 馃幍 rocksky.app
spotify atproto lastfm musicbrainz scrobbling listenbrainz
0

Configure Feed

Select the types of activity you want to include in your feed.

rocksky / sdk / kotlin / rocksky / build.gradle.kts
2.7 kB 86 lines
1import com.vanniktech.maven.publish.JavaLibrary 2import com.vanniktech.maven.publish.JavadocJar 3import com.vanniktech.maven.publish.SonatypeHost 4 5plugins { 6 kotlin("jvm") 7 kotlin("plugin.serialization") 8 `java-library` 9 id("com.vanniktech.maven.publish") version "0.30.0" 10} 11 12group = "app.rocksky" 13version = "0.2.0" 14 15kotlin { 16 jvmToolchain(17) 17 explicitApi() 18} 19 20val ktorVersion = "2.3.12" 21val coroutinesVersion = "1.9.0" 22val serializationVersion = "1.7.3" 23 24dependencies { 25 api("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion") 26 api("org.jetbrains.kotlinx:kotlinx-serialization-json:$serializationVersion") 27 28 api("io.ktor:ktor-client-core:$ktorVersion") 29 api("io.ktor:ktor-client-content-negotiation:$ktorVersion") 30 api("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") 31 implementation("io.ktor:ktor-client-cio:$ktorVersion") 32 33 testImplementation(kotlin("test-junit5")) 34 testImplementation("org.junit.jupiter:junit-jupiter:5.10.2") 35 testRuntimeOnly("org.junit.platform:junit-platform-launcher:1.10.2") 36 testImplementation("io.ktor:ktor-client-mock:$ktorVersion") 37 testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutinesVersion") 38} 39 40tasks.test { 41 useJUnitPlatform() 42 testLogging { 43 events("passed", "skipped", "failed") 44 showStandardStreams = false 45 } 46} 47 48mavenPublishing { 49 publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true) 50 signAllPublications() 51 52 coordinates("app.rocksky", "rocksky-kotlin", project.version.toString()) 53 54 configure(JavaLibrary(javadocJar = JavadocJar.Empty(), sourcesJar = true)) 55 56 pom { 57 name.set("Rocksky Kotlin SDK") 58 description.set("Coroutine-based Kotlin SDK for the Rocksky XRPC API") 59 url.set("https://rocksky.app") 60 inceptionYear.set("2025") 61 licenses { 62 license { 63 name.set("MIT License") 64 url.set("https://opensource.org/licenses/MIT") 65 distribution.set("repo") 66 } 67 } 68 developers { 69 developer { 70 id.set("tsirysndr") 71 name.set("Tsiry Sandratraina") 72 email.set("tsiry.sndr@rocksky.app") 73 url.set("https://github.com/tsirysndr") 74 } 75 } 76 scm { 77 url.set("https://github.com/tsirysndr/rocksky") 78 connection.set("scm:git:git://github.com/tsirysndr/rocksky.git") 79 developerConnection.set("scm:git:ssh://git@github.com/tsirysndr/rocksky.git") 80 } 81 issueManagement { 82 system.set("GitHub") 83 url.set("https://github.com/tsirysndr/rocksky/issues") 84 } 85 } 86}