deven96 / deven96/ahnlich

Ahnlich for mobile?

Open
#129 0 comments 0 reactions 0 assignees View on GitHub
enhancement experimentation help wanted
Dominant language
Rust
Stars
244
Forks
29
Avg merge
2d 41m
Merged PRs (30d)
19

Description

How easy would it be to introduce using ahnlich on mobile?

Several factors I think we can consider at the moment
- Compilation: If we use `cargo-ndk`, we can build rust code to target android as a first step https://github.com/bbqsrc/cargo-ndk
- IPC: Currently the DB and Proxy are accessed via TCP sockets. Running locally on the same metal as the android client however, we can look to use Unix Domain Sockets and further speed up IPC as [UDS can sometimes be twice as fast as TCP](https://stackoverflow.com/questions/14973942/tcp-loopback-connection-vs-unix-domain-socket-performance#:~:text=Unix%20domain%20sockets%20are%20often,and%20servers%20on%20different%20hosts.)
- Server Support: A bit of skepticism as to if we can run the Proxy (or if we even want to) on mobile. The Proxy currently bootstraps some heavy models and stores the original in the DB. The latter leading to unnecessary duplication.
- Library Support: The core serde typegen lib being used has an experimental Dart support but more work is [currently underway](https://github.com/zefchain/serde-reflection/pull/50) to stabilize and would be really useful in providing a Flutter client to communicate with the packaged binary

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.