Before you start reading, this blog was produced by our development team — so it may contain more technical language than you’re used to seeing from us!
When the Wealthify app launched back in early 2017, our main aim was to offer a convenient way for customers to check on the performance of their investments on the go.
We built it using Ionic – a hybrid framework with web views as its foundation – meaning we could apply our existing web development knowledge to quickly build a cross-platform app.
More features, more problems
The app we built worked brilliantly at first, but as Wealthify grew and we added more features and functionality, however, we started to face some problems.
Performance fell behind expectations, and variations between the web views on different devices caused bugs that were difficult to diagnose and fix. Ultimately, the app wasn't up to scratch in terms of delivering our customers' wants and needs. So, it was time for a change.
We then saw the release of Ionic 4: a complete rewrite of the framework. This new version brought some of the improvements we were looking for but required significant migration work given the scale and lack of componentisation of our app — ultimately helping drive the decision to create a new one entirely.
We started work on a new app in 2021, making the decision to rebuild it using a new framework. This approach allowed us to solve the problems we were having with the app, whilst giving us a chance to create a strong foundation for the future.
Choosing a new framework
The first step to building the new app was choosing a framework that helped us achieve what we wanted. We wanted to keep the single codebase and feature parity that Ionic had given us as a cross-platform framework, but it was important to ensure that our new app would be efficient and reliable, feeling at home on both Android and iOS devices.
We compared a lot of the top cross-platform frameworks available, including React Native, Ionic 5, and Flutter. Flutter came out on top thanks to its performance and unmatched developer experience, ticking pretty much every box within our criteria.
Full speed ahead!
Having switched, one of the biggest issues the new app immediately solved was launch speed: the time it takes between tapping on your phone’s app icon and being able to sign into your Wealthify.
The new app is now up to three times quicker, more responsive, and faster loading, with local caching saving time otherwise spent waiting for API calls on slower connections.
Many of these performance improvements are thanks to Flutter's use of the Dart programming language, which is compiled – ahead of time – into native ARM code, with no JS bridge required.
Captured on a Galaxy S8+ using a beta version of the new app
Stability and Predictability
We know there’s nothing more annoying than bugs when using an app — or seeing things that don’t look right because you’re using a different device.
As Flutter carries out the rendering itself, the code that creates the User Interface runs the same on any device or operating system. This also means there’s a much lower risk of bugs being thrown up – especially when it comes to how things are displayed – as we no longer have to handle differences in the underlying WebView.
We’re also using sound null safety in Dart, which helps us immediately spot mistakes in our code and avoid unexpected behaviour. Automated end-to-end testing with integration tests also helps us catch any problems before they even become problems!
Powerful developer tools
When we were building new features in the old app, we'd have to recompile the entirety of it just to be able to test our changes — losing the current state in the process. With Flutter’s ‘hot reload’ feature, however, we can now quickly build and test iterative changes.
This even works with multiple devices simultaneously, meaning we can build and test new features from the ground up, with our changes reflected as we make them. This is applicable on both Android and iOS devices – as well as a variety of screen sizes – so there’s no wasting time waiting for the app to recompile.
Security is stronger than ever
We’ve always prided ourselves on our app’s security, so a lot of the security features from the old one are staying; you’ll be able to continue using two- factor authentication and login using biometrics, PIN, or your password.
Of course, all the encryption, certificate pinning, and other security measures are included as standard — and we’ve even added more protection against tampering to ensure this new app is as secure as possible.
We hope you love the new app as much as we do. And if you'd like to help us test new features as and when they become available, you can join the beta here if you’re an Android user — or here if you’re on iOS.
With investing your capital is at risk, so the value of your investments can go down as well as up, which means you could get back less than you initially invested.