Global Citizen: Scaling activism and impact with Flutter
Successful migration the Global Citizen app to a Flutter-based digital platform
Over 28 million actions taken since founding in 2012
Continuous integration practices and testing, ensures the platform is highly maintainable and scalable for future updates and improvements
Goal
Global Citizen, an organization committed to ending extreme poverty by 2030, has long recognized the power of mobile technology in mobilizing its international community of millions of activists. However, they faced a multifaceted challenge with their existing mobile app. Firstly, the app was fragmented across Android and iOS platforms, leading to inconsistencies in user experience and feature availability. Secondly, the organization had to cater to a global audience, which meant the app needed to support multiple languages and accessibility features. Lastly, the team had to manage this while the existing app was still in operation, requiring a seamless transition to any new platform they chose.
The overarching goal was to create a unified, scalable, and maintainable mobile platform that would not only provide a consistent and engaging user experience but also be flexible enough to adapt to the diverse and evolving needs of its global user base. They aimed to achieve this without compromising on the quality of user engagement or the speed at which new features could be rolled out. In essence, Global Citizen sought a solution that would allow them to scale their activism efforts more effectively and make a greater impact in their fight against extreme poverty.
Why Flutter?
L+R consulted with the technical leads at Global Citizen evaluating various cross-platform frameworks and decided to shift to Flutter for its long-term efficiencies in Android and iOS development. Flutter was chosen for its ability to provide a consistent user interface across various platforms and its flexibility in accommodating a wide range of features and accessibility options.
Our Solution
The L+R team took a proactive approach to communication by providing regular status updates and detailed project plans, giving stakeholders visibility into the development process. To streamline the app development process, the team planned sprints based on must-have features that formed the app's core, followed by features that increased user engagement and enjoyment.
During the development process, the L+R team adopted the BLoC (Business Logic Component) architecture to improve the separation of concerns and facilitate integration with existing systems. Additionally, the team created a design system to ensure consistency across the app's user interface, which helped to speed up the development of UI components. The team closely followed these structures and architectures, resulting in a highly consistent and intuitive user experience across all platforms.
The L+R team seamlessly integrated new technology with our team, elevating our organization while catering to our diverse user base.
Results
The new Global Citizen app has successfully transitioned to Flutter, offering a seamless experience to its millions of users worldwide. The app supports multiple languages, including English, Spanish, French, and German, and provides accessibility features such as screen-reader support, text scaling, and clickable elements. The unified codebase allows for quicker updates and feature rollouts, enhancing user engagement and furthering the organization's mission.
The ability to build and design once has enabled the team to move more efficiently, maintaining consistency across platforms and delighting users by making the switch to Flutter.