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

Use Kotlin Multiplatform and merge platform-android with core #208

Closed
nielsvanvelzen opened this issue Mar 30, 2021 · 3 comments · Fixed by #308
Closed

Use Kotlin Multiplatform and merge platform-android with core #208

nielsvanvelzen opened this issue Mar 30, 2021 · 3 comments · Fixed by #308

Comments

@nielsvanvelzen
Copy link
Member

Moving the structure of the library to Kotlin Mutliplatform allows us to add the Android specific code to the core library. This would make it easier to use the library as users don't need to include the Android platform separately. It also makes it easier for us to support different platforms like JavaScript, WASM, Native or iOS in the future.

I already tested this in #187 and it might be a relatively easy change.

@spauldhaliwal
Copy link

+1 to this. I was thinking of building a Flutter app for Jellyfin at some point in the future, and having the sdk support kotlin multiplatform would help with that (we currently use this structure at my job: kotlin multiplatform library for the business logic, with a flutter wrapper for the library, and then the UI only built in flutter)

@nielsvanvelzen
Copy link
Member Author

Kotlin MPP does allow us to add iOS support eventually but it's not a priority right now. So while you could make Flutter bindings for the SDK it would work on Android only.

I think using an OpenAPI generator specifically written for Dart might be the better option for Flutter apps right now.

@spauldhaliwal
Copy link

Perhaps. I haven't looked at the SDK yet and only became aware of it yesterday but to me, if all the HTTP calls, db / image caching, and any other core logic could be contained in a KMPP library that would still save a lot of time and effort. Building UI's in Flutter is so fast and easy that this structure has really become my favourite lately. The only problematic part I'd anticipate is the video and or audio players (not insignificant) I'll hopefully have time to take a closer look at the SDK this week to see how things stand.

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