This started as a proof of concept, but it has potential as there isn't any mobile framework written in Rust, so I am going to continue developing it when I have free time.
Pull requests welcome! If you want to help me build this project, let me know so I can explain what I have in mind for every item in the roadmap.
- Make sure you have the latest versions of Xcode and Rust (+ Cargo)
- Clone the repo
- Install
cargo-lipo
(i.e.cargo install cargo-lipo
) - Make sure
xcode-select -p
points to your Xcode location, NOT the command line tools Homebrew loves to install - Add the iOS targets to
rustup
(i.e.rustup target add aarch64-apple-ios x86_64-apple-ios
) - Build the library (i.e.
cargo lipo
orcargo lipo --release
) - Build and run the Xcode project
- Passing data to Swift through a C bridging header
- Passing data back to Rust for deallocation
- Basic view structure with traits
- Reactive views
- Supporting Android
- Translating everything from UIKit and Android SDK
- Plugin support
- Better file organization
- Testing
- Better debugging tools - surprisingly, Xcode has some kind of debug support for Rust files (it shows the line with the exception), but it's not enough
- Better exception handling
- Better tree shaking and inlining
- Writing a CLI - preferably in Rust
- Writing a website