22 ms·
Do you have clients for Android, iOS, Mac apps, Flutter, Rust? If not, how hard do you think it is to implement a client for an additional language?
by serial_dev 2y ago
Do you have clients for Android, iOS, Mac apps, Flutter, Rust? If not, how hard do you think it is to implement a client for an additional language?
- stopachka 2y agoThe core client SDK is pretty small -- it's about 10K LOC. We want to get the core abstractions right in JS-based environments, than expand. We really like Mitchel Hashimoto's post about how he built Ghostty on different platforms [1] [1] https://mitchellh.com/writing/zig-and-swiftui https://mitchellh.com/writing/zig-and-swiftui
- serial_dev 2y agoSo if I understand it right one option you seriously consider is... after the JS client feels right, you write a "core" language in C/Rust/Zig, then "wrap" it with Swift, Kotlin, and Dart?
- stopachka 2y agoYes. for more context: Right now because our client SDKs are in JS, we can share much of the logic between React Native, React, and vanilla JS. If we were to add native client SDKs, we'd have to duplicate the logic across different languages. One alternative path could be to write some shared code in a core language. This idea is not set in stone at all though, I just enjoyed Mitchell's experience report.