Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Kotlin Multiplatform #1045

Open
ashughes opened this issue Feb 26, 2024 · 0 comments
Open

Support for Kotlin Multiplatform #1045

ashughes opened this issue Feb 26, 2024 · 0 comments

Comments

@ashughes
Copy link

Is your feature request related to a problem? Please describe.
In a Kotlin Multiplatform project, Themis must be integrated for each platform (Android, JVM desktop, native/iOS/macOS, WebAssembly) individually.

Describe the solution you'd like to see
If Themis adds first class support for Kotlin Multiplatform, then the Themis Kotlin API could be used in common Kotlin code while the implementation for each platform is handled automatically. This would allow encryption and decryption logic to be shared between platforms.

Describe alternatives you've considered
The alternative is to rewrite the Themis integration for each platform in a Kotlin Multiplatform project. This requires each project integrating Themis to either:

  1. Create a common Themis Kotlin API in order to share the encryption and decryption logic, then implement the API per platform using the platform specific implementation. This is essentially what this feature request is requesting to be done once for all instead of each Kotlin Multiplatform project having to do it separately.
  2. Not share the encryption and decryption logic and to re-implement it on each platform using the platform's native API.

Additional context
Google has been adding support for Kotlin Multiplatform to several of their core AndroidX libraries and JetBrains has been adding Kotlin Multiplatform support to Android's Compose UI toolkit as well. The popularity of Kotlin Multiplatform is growing and this would be a great addition for Themis given it already supports the target platforms of Kotlin Multiplatform.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant