---
The Kotlin SDK for Jellyfin implements the Jellyfin API to easily access servers. It is currently available
for the JVM and Android. Developer documentation is available at [kotlin-sdk.jellyfin.org].
[kotlin-sdk.jellyfin.org]: https://kotlin-sdk.jellyfin.org/guide/getting-started.html
## Contributing
We welcome contributions to the SDK. Open an issue or ask in our official chats if you plan to make bigger changes.
To validate binary compatibility we use the [Binary compatibility validator] tool from the Kotlin team. When creating
pull requests the api files need to be updated. Use the `apiDump` Gradle task to generate the api files. Add the changes
from this command to a separate commit to make the review process easier.
[Binary compatibility validator]: https://github.com/Kotlin/binary-compatibility-validator
## Testing
The SDK includes two example projects, the kotlin-cli and java-cli, to test various larger functions like server
discovery. Besides that we use unit tests to test smaller components, these can be executed with the `allTests` Gradle
task. We recommend adding new tests for changes to the
code.
### Testing in app
It is also possible to test a new version of the SDK in your own app. Use the `publishToMavenLocal` Gradle task to
publish the SDK to your local system, afterwards you can add `mavenLocal()` as repository and use the `latest-SNAPSHOT`
version for the SDK. This process is simplified in our official apps by adding an option to the `gradle.properties`
file.