Flutter development for iOS, Android, and the web
Hackberry Bay is a Swedish app development agency based in Stockholm that builds apps using Flutter. We help startups and established companies develop modern apps that work on iOS, Android, and the web from a single codebase, while maintaining high performance and a consistent user interface.
Flutter is an open-source framework from Google for building cross-platform apps. One codebase, all platforms, faster development, and easier maintenance. It uses the Dart programming language, and the result is native-compiled apps that feel just as fast and responsive as apps built directly in Swift or Kotlin.
At Hackberry, we’ve been working with Flutter for five years, almost since the framework was launched. We’ve built Flutter apps in the fields of health, energy, sports, and social events. One of our major ongoing projects is Claire, a health app built in Flutter with Serverpod as the backend and BankID authentication.
What is Flutter?
Technically, Flutter differs from other frameworks in two ways. First, it uses Dart as its programming language and compiles directly to the platform’s native code.
In other words, it’s not a web-based or hybrid solution—Flutter apps leverage the platforms’ native APIs, and their performance is comparable to apps built directly in Swift for iOS or Kotlin for Android.
Second, Flutter has its own graphics engine (the same Skia engine that Chrome is based on), which delivers pixel-perfect design and a consistent UI across platforms. That’s why companies like Google, BMW, eBay, and Skandiabanken use Flutter for their production apps.
When is Flutter the best choice?
Flutter is particularly well-suited when you want to:
- have pixel-perfect control over design and animations
- Build apps, websites, and desktop applications from the exact same codebase
- Create graphical or game-like interfaces where every detail matters
- work with a team that already has Dart expertise or has invested in Serverpod as a backend
Graphics- and animation-driven apps are Flutter’s strongest suit. When design is a central part of the product and you want maximum control over every pixel, Flutter usually delivers the best results.
Backend for Flutter apps
Flutter handles the user interface, but a complete app solution almost always requires a backend for data, users, and logic. We recommend three main approaches.
Serverpod
Serverpod is a Swedish open-source framework built specifically for Flutter. It makes it easy to set up a fast, typed, and secure backend in Dart that’s fully integrated with the app. It’s perfect when you want to own the entire stack and have the same developers work on both the backend and frontend. We use Serverpod in the Claire project, where we’ve also integrated BankID authentication with the backend.
Firebase
For many apps, Google Firebase is an excellent choice. It provides authentication, databases, storage, push notifications, and hosting right out of the box. We often use Firebase for MVPs, startups, and apps that need to launch quickly but still have a foundation that can scale over time.
Dedicated backend in another language
For specialized needs, we complement the Flutter app with a dedicated backend built in Node.js, NestJS, or Python, depending on the project’s requirements. At Hackberry, we help you choose the right backend strategy—always with a focus on simplicity, performance, and long-term scalability.
Customer case in live operation
Claire
Claire is a health app built using Flutter with Serverpod as the backend and BankID authentication. The project is a great example of what Flutter can deliver in a security-critical context: patient data, compliance requirements, and high demands for stability. Flutter was chosen to enable maximum code sharing between iOS, Android, and the web. Read the full Claire customer case study
We also have a support agreement for Hub Ocean’s Flutter app, which is used globally in C4IR Ocean’s work on marine biology, plastic collection, and biodiversity data.
You can find more examples in our portfolio of client case studies.
Why Hackberry Bay for Flutter?
We’ve been working with Flutter since the framework’s early days. We’ve built and maintain Flutter apps in the fields of health and environmental data, ranging from security-classified health systems using BankID to globally distributed data collection apps. As a local Swedish partner, we can assist with everything from strategy and design to development and launch, or simply take responsibility for a specific part of the process.
We are an employee-owned agency in Solna, Stockholm. You own all the code, there are no lock-in agreements, and we can draw on our own developers with CTO or CPO experience when needed.
Smart tech. Awesome people. Lasting impact.
Frequently Asked Questions About Flutter
-
Both are open-source frameworks for cross-platform development. Flutter is from Google and uses Dart with its own graphics engine, which provides pixel-perfect design and full control
about animations. React Native is from Meta and uses JavaScript or TypeScript with the platform’s own native components, making it a natural fit for teams already working with React. Both are production-ready and used by major players worldwide.
-
Flutter apps are compiled into native code for each platform. It is not a web view or a hybrid solution. Performance is comparable to apps built directly in Swift for iOS or Kotlin for Android.
-
Serverpod is built specifically for Flutter and provides a typed Dart backend written in the same language as the app. Firebase is a great choice for MVPs and rapid launches thanks to its built-in authentication, database, and push notifications. For specialized needs, we also build dedicated backends in Node.js, NestJS, or Python.
-
Yes. We have implemented BankID authentication in Flutter using Serverpod in the Claire project. The same principle applies to Swish, Klarna, and Postnord integrations, as well as Swedish map services and other Nordic infrastructure.
-
An MVP is often built in six to ten weeks. A fully functional product with a backend, design, and multiple user roles typically takes three to six months. Larger enterprise projects with compliance requirements take six to twelve months. The time required is primarily determined by integrations and custom logic, not by the framework itself.
-
Yes. Flutter supports iOS, Android, web, and desktop from the same codebase. Claire is an example where we share large portions of the code between the mobile app and the web.
