Introduce a Kotlin Multiplatform Mobile library

Open
#2 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
java, kotlin, rust
Domain
mobile-dev

Research direction

Start by examining the current etebase-java implementation and how its Rust code generates classes. Research Kotlin Multiplatform Mobile support for Android, the JVM, and iOS, including native DLL loading. Done means a working library can use shared Kotlin code with platform-specific networking across the proposed targets.

Written by the indexing model from the issue text.

Description

KMM is a way to write code that runs on Android, iOS, native and the JVM. Common code is written in Kotlin and platform-specific code can then be used to implement lowlevel details (in this case networking).

The current etebase-java java implementation only works on Android. Rewriting it could make it possible to run it on Android and the JVM. Taking it a step further one could also include iOS support.

I am not familar with how native DLL loading would work in this case. I took a glimse at the code in this repository but do not really understand how it works to be honest. Does the Rust code generate all the necessary classes on built (deterministically)?

Dominant language
Rust
Stars
58
Forks
8
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from etesync/etebase-java

All issues in etesync/etebase-java

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.