STAGE uses Firebase and Flutter to cut release time in half
Introduction
STAGE is a feature-rich streaming platform catering to a wide range
of Indian dialects and languages. From poetry to movies to motivational
content, STAGE offers almost every form of entertainment on their platform
to over 1.8 million daily active users.
Challenges
To fulfill their mission of providing tailored content to a wide
range of Indian audiences, STAGE needed to offer apps for a variety
of platforms, including iOS, Android, Web, macOS, and Android TV. But
with a small development team, they needed a highly efficient way to
build this multi-platform app, with infrastructure that could store and
deliver their content to users securely and in real time for a smooth
viewing experience that would help them stand out in the competitive
streaming market.
Solution
After a month of trying to build each app in parallel,
the team learned about Flutter in a Google Developer Group.
It seemed like a promising solution, as it would allow them to
develop all of their apps from a single codebase, saving them a
considerable amount of time. They were also excited about features
like hot reload, which allows developers to immediately see the results
of their code changes in the app, allowing for faster development and
painless debugging. Flutter’s rich set of customizable widgets also
makes it easy to build beautiful and responsive user interfaces.
The team found Flutter very easy to learn, in part because it uses a
single programming language, Dart, for both front-end and back-end development.
The Flutter community helped STAGE’s small developer team get up to speed quickly.
STAGE decided to pair Flutter’s front-end tools with Firebase’s complementary
back-end services for full-lifecycle support. They used Firebase’s fully managed
back-end services to get to market faster, with Realtime Database and Cloud Storage
at the heart to store, sync, and deliver content to users in real time, which is
especially critical for live broadcasts. They used Authentication to set up a secure
user sign-in flow, Cloud Functions to automate backend tasks, and integrated Google
Analytics to better understand their user behavior.
In addition to infrastructure products, Firebase also provides tools to improve app
quality and drive business growth. The STAGE team used testing and monitoring products
Test Lab and Crashlytics to ensure their app was performant and stable on a variety of
devices, and engagement products like Cloud Messaging to deliver personalized
notifications.
Recently, STAGE used Remote Config and A/B Testing to evaluate various free-trial
offers with different audience segments. Remote Config allowed them to personalize
the offers to match user behavior and preferences, and optimize them based on early
insights - without requiring an app update. The test was easy to set up and quick to
run, and the team was able to roll out the best offers to scale the campaign, which
helped increase user conversions by 25%.
Next up, STAGE plans to build a full-featured desktop app with Flutter and Firebase,
with support for LG and Samsung TVs coming soon.
Results
50% - reported increase in developer efficiency
2x - faster app release cycles
2x - faster feature releases
"Flutter is a powerful and flexible mobile development framework with a wide range of built-in widgets and tools that make it easy to build beautiful, feature-rich multi-platform apps. We love how it pairs with Firebase to not only give us the infrastructure we need for the backbone of our app, but also tools to help us improve quality, engage users, and test new ideas safely."
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],[],[],[],null,["# STAGE Case Study\n\n[*arrow_back*\nExplore other case studies](/case-studies) \n[View more solutions](/solutions) \n\n##### STAGE uses Firebase and Flutter to cut release time in half\n\n*** ** * ** ***\n\n##### Introduction\n\n[STAGE](https://play.google.com/store/apps/details?id=in.stage) is a feature-rich streaming platform catering to a wide range\nof Indian dialects and languages. From poetry to movies to motivational\ncontent, STAGE offers almost every form of entertainment on their platform\nto over 1.8 million daily active users.\n\n*** ** * ** ***\n\n##### Challenges\n\nTo fulfill their mission of providing tailored content to a wide\nrange of Indian audiences, STAGE needed to offer apps for a variety\nof platforms, including iOS, Android, Web, macOS, and Android TV. But\nwith a small development team, they needed a highly efficient way to\nbuild this multi-platform app, with infrastructure that could store and\ndeliver their content to users securely and in real time for a smooth\nviewing experience that would help them stand out in the competitive\nstreaming market. \n\n*** ** * ** ***\n\n##### Solution\n\nAfter a month of trying to build each app in parallel,\nthe team learned about [Flutter](https://flutter.dev/) in a [Google Developer Group](https://developers.google.com/community/gdg).\nIt seemed like a promising solution, as it would allow them to\ndevelop all of their apps from a single codebase, saving them a\nconsiderable amount of time. They were also excited about features\nlike hot reload, which allows developers to immediately see the results\nof their code changes in the app, allowing for faster development and\npainless debugging. Flutter's rich set of customizable widgets also\nmakes it easy to build beautiful and responsive user interfaces.\n\nThe team found Flutter very easy to learn, in part because it uses a\nsingle programming language, Dart, for both front-end and back-end development.\nThe Flutter community helped STAGE's small developer team get up to speed quickly.\n\nSTAGE decided to pair Flutter's front-end tools with [Firebase's](/) complementary\nback-end services for full-lifecycle support. They used Firebase's fully managed\nback-end services to get to market faster, with [Realtime Database](/products/realtime-database) and [Cloud Storage](/products/storage)\nat the heart to store, sync, and deliver content to users in real time, which is\nespecially critical for live broadcasts. They used [Authentication](/products/auth) to set up a secure\nuser sign-in flow, [Cloud Functions](/products/functions) to automate backend tasks, and integrated [Google\nAnalytics](/products/analytics) to better understand their user behavior.\n\nIn addition to infrastructure products, Firebase also provides tools to improve app\nquality and drive business growth. The STAGE team used testing and monitoring products\n[Test Lab](/products/test-lab) and [Crashlytics](/products/crashlytics) to ensure their app was performant and stable on a variety of\ndevices, and engagement products like [Cloud Messaging](/products/cloud-messaging) to deliver personalized\nnotifications.\n\nRecently, STAGE used [Remote Config](/products/remote-config) and [A/B Testing](/products/ab-testing) to evaluate various free-trial\noffers with different audience segments. [Remote Config](/products/remote-config) allowed them to personalize\nthe offers to match user behavior and preferences, and optimize them based on early\ninsights - without requiring an app update. The test was easy to set up and quick to\nrun, and the team was able to roll out the best offers to scale the campaign, which\nhelped increase user conversions by 25%.\n\nNext up, STAGE plans to build a full-featured desktop app with Flutter and Firebase,\nwith support for LG and Samsung TVs coming soon.\n\n*** ** * ** ***\n\nResults\n\n50% - reported increase in developer efficiency\n\n2x - faster app release cycles\n\n2x - faster feature releases \n\n\"Flutter is a powerful and flexible mobile development framework with a wide range of built-in widgets and tools that make it easy to build beautiful, feature-rich multi-platform apps. We love how it pairs with Firebase to not only give us the infrastructure we need for the backbone of our app, but also tools to help us improve quality, engage users, and test new ideas safely.\"\n\n\n- Mirnal, Flutter Lead, STAGE \n\n### Learn more\n\n[Get started with Firebase](/) \n[Get started with Flutter](https://flutter.dev/) \nTry Firebase today\n\n\nIntegrating it into your app is easy.\n[Get started](https://console.firebase.google.com/) \n\n#### All Firebase products\n\n##### Build\n\n- [App Check](/products/app-check)\n- [App Hosting](/products/app-hosting)\n- [Authentication](/products/auth)\n- [Cloud Functions](/products/functions)\n- [Cloud Storage](/products/storage)\n- [Data Connect](/products/data-connect)\n- [Extensions](/products/extensions)\n- [Firestore](/products/firestore)\n- [Firebase ML](/products/ml)\n- [Genkit](https://genkit.dev/)\n- [Hosting](/products/hosting)\n- [Realtime Database](/products/realtime-database)\n- [Firebase AI Logic client SDKs](/products/firebase-ai-logic)\n\n[Generative AI](/products/generative-ai) \n\n##### Run\n\n- [A/B Testing](/products/ab-testing)\n- [App Distribution](/products/app-distribution)\n- [Cloud Messaging](/products/cloud-messaging)\n- [Crashlytics](/products/crashlytics)\n- [Google Analytics](/products/analytics)\n- [In-App Messaging](/products/in-app-messaging)\n- [Performance Monitoring](/products/performance)\n- [Remote Config](/products/remote-config)\n- [Test Lab](/products/test-lab)"]]