iOS and Android apps
from one Flutter codebase
We build Flutter apps for iOS and Android from one codebase, using each phone’s own features where they matter, so each feature is built once, for both.
Thanks, we’ll be in touch soon.
{{ heroStatus }}
You’re in good company
A few of the companies we’ve worked with.
When every feature is built twice
Many businesses run two apps, one for each platform, iOS and Android, often built separately by two teams. Each feature is built twice, and one app usually gets it first. Over time the two drift apart: a fix lands in one and waits in the other, and every release, each update sent to the stores, is planned twice. A new app faces the same choice before its first line of code. Native apps are still the better fit for some products. For many others, one codebase, the single set of code both apps are built from, keeps them together.
What we build
Apps for both phones from one codebase, each change tried on real phones of both kinds before it reaches a store.
New apps for iOS and Android
Started on one codebase and tried on real phones of both kinds as it grows, so neither app waits for the other to catch up.
Native apps moved a screen at a time
Flutter screens added to your existing iOS and Android apps a part at a time, as the Flutter documentation describes, while the rest of each app keeps working as it is.
The phone’s own features
The camera, location, notifications and payments, reached through packages, ready-made code that other developers publish, or through a little code written for each platform.
Apps that work offline
Forms, notes and photos kept on the phone while the signal is gone, and sent on in order once it returns.
Connections to your back end
Linked to your own systems through the back end, the software that holds the app’s data, so both apps and your website show the same information.
Accessible apps
Checked with each phone’s own screen reader and at very large text sizes before each release, as the Flutter accessibility guide sets out.
Store releases
Both apps prepared for their stores together, with store review planned into the schedule and new versions rolled out in stages, so a release can be paused early.
Web and desktop, where they fit
The same codebase built for the web, Windows, macOS or Linux where that suits. On the web it fits interactive apps; a site made mostly of articles is better built the usual way.
A faster, smoother app
Slow screens and stutter measured on real phones, the cause traced, and each fix measured again before it ships.
- Apps on any stack, native included:Mobile Apps
- Care once it’s live:Support & Maintenance
- Developers in your own team:Hire Flutter Developers
Written once, built for iOS and Android
The Flutter framework is open source, made by Google, and builds apps for several platforms from one codebase. Its apps are written in the Dart™ language. A Flutter app’s screens and logic are written once, then built into an app for iOS and an app for Android.
The framework draws the screens itself, so both apps look alike, and it follows each platform’s habits where people expect them, such as how a list scrolls or how to go back. Where a feature belongs to the phone, such as the camera or notifications, the app uses each platform’s own, through a package or a little code written for that platform.
So a change is made once, and can reach both apps in the same release.
One codebase
Written once, in both apps
{{ cbStatus }}
Kept current with Flutter releases and each store
The Flutter team brings out new versions of the framework through the year, and the packages your app uses keep schedules of their own, while some stop being looked after. Each store moves its line too: Google Play stops offering apps that fall behind its target level to new users on newer Android versions, and Apple sets the tools new uploads must be built with.
We keep your app on a current Flutter version, replace packages that are no longer looked after, plan each upgrade ahead of each store’s next requirement, and test on real phones before every release.
Start with a review of your app
The review covers its Flutter version, its packages and which of them are still looked after, the next store requirement it has to meet, its crash reports and slowest screens, its accessibility basics, its tests, and how it’s built and released. You get a written review under three headings, Keep, Fix and Rebuild, and a proposal for the first step.
Nothing built yet? We start with one flow built for both phones, which you can try on your own phone early on.
Questions worth asking
Should we build a Flutter app or two native apps?
It depends on what the app relies on. One Flutter codebase suits apps that should work the same way on both phones and be looked after by one team. When an app relies on the phone itself, such as the camera, location, work in the background or each platform’s newest features, two native apps are often the better fit, and we’ll say so.
Mobile AppsA Flutter app or a React Native app?
Both build apps for iOS and Android from one codebase. React Native apps are written with React, so they suit a team that already works in it, and their parts become each platform’s own views. The Flutter framework draws its own screens, so both apps look alike. We’ll weigh which fits your team and your app.
Will it feel right on both iOS and Android?
For the most part, yes. The Flutter framework adapts what each platform does its own way, such as scrolling, going back, page transitions and editing text. Where the platforms differ by design, such as alerts or tabs, it doesn’t switch on its own, so we decide with you, screen by screen, which follow each platform and which follow your brand.
Can it use the camera, payments and notifications?
Yes. The app reaches them through packages or a little code written for each platform, as described above, so each phone’s own feature does the work underneath.
Can our native apps become Flutter apps without starting over?
Yes. Flutter screens can be added to an existing iOS or Android app as a module, while the rest of the app keeps running as it is, so each screen moves across when it’s ready.
Can you take over our existing Flutter app?
Yes. We start by reading the code and running the app on real phones, then the review sets out what to keep, fix and rebuild, and you decide what comes first.
Can the same code run on the web or desktop?
Yes, on the platforms the Flutter documentation lists: the web, Windows, macOS and Linux. On the web it suits interactive apps, or a browser version of a mobile app; pages made mostly of text, such as articles, are better built the usual way for the web.
Who publishes it to the stores?
Both apps are published under your own developer accounts, and their code and signing keys are yours. We prepare each release for its store and plan store review into the schedule.
Can you make our app faster?
Yes. On real phones of both kinds, we trace what slows each screen down, from how it’s drawn to the calls it makes to your back end, and fix the biggest causes first, so every fix is measured, not assumed.
Performance & OptimizationIs it accessible?
It can be, and we check that it is. The Flutter framework supports screen readers, large text and other accessibility settings on both platforms, and we test each release with each phone’s screen reader and at very large text sizes, as the Flutter accessibility guide sets out.
AccessibilityWho hosts the back end?
Both apps reach people through their stores. For the back end they talk to, hosting and the platform beneath your software are a service of their own.
Cloud, DevOps & SecurityHow do you keep it secure?
We keep the app on a current Flutter version, choose packages that are still looked after and keep secrets out of the app itself. Threat modeling, code review and checks in every build sit around that.
Application SecurityWhat does it cost?
It depends on what the app has to do, and on whether it’s new or moving across from native apps. You get a written proposal before any work starts: the scope, the price or rate, and how you pay.
PricingCan we bring Flutter developers into our team?
Yes. Within 48 hours of your request we introduce Flutter developers suited to your app, all working in your time zone, and the choice of who joins is yours.
Hire Flutter Developers
Flutter, Dart and the related logos are trademarks of Google LLC. Webair isn’t endorsed by or affiliated with Google LLC.
Let’s build it better
Tell us about the app you need, or the two you run today, and we’ll come back with a plan for both.
Thanks, we’ll be in touch soon.
{{ ctaStatus }}