News for hackers. Stuff that matters.

Antonito

Re:Expanding Swift's IDE Support on Wednesday April 08, 2026 @05:40PM (#47696639)
As others have stated it's possible, but might be cumbersome.

I made an example of an iOS/Android monorepo with a shared Rust core a few months ago: https://github.com/Antonito/bazel-app-core-native-example/

You do need the Android SDK to build, Android Studio makes things easier (even though the Bazel IDE plugin is a whole other topic itself..) but isn't mandatory to develop or run your app.

Didn't know about it, that's pretty cool!
Glad you like it!

If you think of any feature/improvements, feel free to open a issue/pull request! :)

That project is really cool!

I'm planning to work on the SDP stuff at some point. It works well, but sharing two base64 encoded strings isn't very practical :/

Transfer is done via DTLS, a protocol on top of UDP, so we have to deal with packet loss and retransmission, which itself is controlled by SCTP. gfile uses pion/sctp[0] (via pion/webrtc[1]), and there has been some work going on to improve performances. :)

The performances used to be far worse, but with the recent improvements on pion/sctp, I felt gfile had become fast enough to be useful to some people.

[0]: https://github.com/pion/sctp

[1]: https://github.com/pion/webrtc

Hey!

It can be useful if your transmitting data between two different clients on two different networks. In this case, you don't need to open ports on your firewall nor change your network configuration :)

Thank you!

Yup, it still relies on a STUN server to get the connection's metadata. As hardwaresofton pointed out, I'm using Google's STUN server.

Since it's only STUN, and not TURN, the actual transferred data does not go transit through it though.

Yup, it can be done! Actually, it's one of my next objectives for it. I started to write a front-end client, with WebAssembly. It's not fully working yet, but you can take a look at it here: https://github.com/Antonito/gfile/tree/master/_client/web