We helped Slickdeals move its iOS and Android apps onto one Flutter code base, built a Flutter SDK for its monitoring tool with Embrace along the way. Its feature release velocity doubled.
- release velocity
- 2x
- test coverage
- ~80%
The Slickdeals app on a phone with its deal feed, For You, Frontpage, and Popular, and six deals with prices, votes, and comments. Vote a deal up and one that passes 25 votes reaches the Frontpage. Beside it, the Embrace session recording each page view and moment.
01The ask
Two native apps, shipping on two different calendars.
Slickdeals has spent more than 20 years as a community of shoppers helping each other find and share deals. It reaches people through its website, a browser extension, and its mobile app, and the app is a primary channel for engagement.
Years of separate development had split the code. iOS moved from C to Swift, Android from Java to Kotlin, and one team almost always shipped an update before the other. Every feature and fix was built twice, on top of years of tech debt.
In their words
-
“At one point, I asked one of my team members for their opinion on how the integration was going, and they said, ‘I don’t know where our team ends and their team begins.’”
Director of Engineering, Slickdeals Christopher Gulliver
02The pick
A bake-off between React Native and Flutter.
Slickdeals wanted a platform it could sustain for five years or more, and put React Native and Flutter side by side. Flutter won on long-term sustainability, consistent tooling, and an active community.
It chose VGV for the migration because of how we write code, clean, maintainable, and “boring,” with clarity ahead of complexity. The plan was to port features, not code.
03The SDK
Embrace had no Flutter SDK. Three weeks later, a beta.
Slickdeals introduced VGV and Embrace. Embrace built a proof of concept for the SDK, we brought it in line with our best practices, and the new version reached beta in about three weeks.
The SDK tracks page views and moments and kept full visibility into performance, crashes, and user behavior through the migration. Any organization building with Flutter can use it now.
04The migration
Foundations first, then the features on top.
The move started with initialization and core components and grew into full features. Some features stayed native for the moment, wrapped in Flutter. iOS and Android engineers moved to shared workflows, tools, and state management, and automated test coverage for Dart code reached about 80%.
Not every early choice aged well. Wrapping legacy native views got the app out, but the complex native code behind them cost more time than porting would have. More features are still moving to Flutter.
05What changed
Twice the releases, and one team instead of two.
-
Velocity
Feature releases doubled.
One code base and shared workflows doubled how fast features reach users.
-
Same day
iOS and Android get updates together.
Users on both platforms now receive features and fixes at the same time.
-
Visibility
Embrace came along.
A custom Flutter SDK for Embrace kept the team’s view of performance, crashes, and user behavior.
-
One team
The clever team and the cautious team merged.
Engineers once split by platform now work as one team with shared norms, and keep the strengths of both.
06If you’re next
What we’d tell a team in Slickdeals’ seat.
- 01
List the tools you can’t lose before you pick a framework. If one has no path to Flutter, build that path first.
- 02
Port views to Flutter from the start where you can. Wrapping native views saves time on launch day and costs more later, which is the lesson Slickdeals’ own director of engineering shares.
- 03
Write boring code. Clear patterns and high test coverage keep the tech debt from growing back.
Roll credits.
Who did what, and with which tools.
- Client
- Slickdeals
- Our part
- Product strategyFlutter migrationEmbrace Flutter SDKTeam training
- Platforms
- iOS and Android
- Built with
- FlutterDartEmbrace
- Timeline
- SDK beta in about three weeks
Built by Very Good Ventures
More success stories
All success stories
Flutter News Toolkit: 80% less time to launch
- less time to launch
- 80%
- audience growth
- 10%
V1 Sports doubles revenue with Flutter
- revenue, year over year
- 2x
- user accounts
- 300K+
- codebases unified
- 6 → 1
Nav doubles user growth with Flutter
- user growth
- 2x
- engagement increase
- 200%
We’ll care about your success as much as you do.
Our unicorns read every message and reply, usually the same day.
Start the conversationA 30-minute call about what you’re building.






