Vlad Filippov

Vlad Filippov

full-stack software developer / open source hacker

Notes by Firefox with Rust components

This is a mirror article that was originally posted at https://medium.com/firefox-test-pilot/notes-now-uses-rust-android-components-4809af1e4172

Today we shipped Notes by Firefox 1.1 for Android, all existing users will get the updated version via Google Play.

After our initial testing in version 1.0, we identified several issues with the Android’s “Custom Tab” login features. To fix those problems the new version has switched to using the newly developed Firefox Accounts Android component. This component should resolve the issues that the users experienced while signing in to Notes.

Image for post

The Android component in Notes uses one of our Rust components in the background to perform authentication actions for Firefox Accounts. The Rust components can be cross-compiled for different environments such as Android, iOS and desktop operating systems. This way we don’t have to rewrite and maintain several copies of the same authentication logic in different languages. There are other reasons why we chose Rust to develop low-level components, such as memory safety, no data races, performance, and more. We hope to bring these new components into our other apps in the near future.

If you are interested in this component architecture and want to contribute, please check out the following links below:

Image for post
Download Notes for Android on Google Play

Big thanks to our SoftVision QAMozilla Mobile and Mozilla Application Services teams for helping with this release!

© Vlad Filippov