‘Cross Platform’ Hack Day: Google Flutter

Platform Overview

Flutter is still an early stage alpha project created by Google, but has already been used in some high profile production apps — notably for the Broadway smash Hamilton, and for several Google internal apps. Flutter apps are created using the Dart programming language (https://www.dartlang.org/), and will run on Android 4.1 and up and iOS 8 or newer. The whole Flutter offering is centred on speed (both of development, and of the apps themselves), and on beautiful and smooth UI elements that are advertised as “as good as native”. Whilst making heavy use of Google’s material design, it also features widgets (cutely named “Cupertino”) that have an iOS native look.

Installation and Tools

Even though it’s still in Alpha, the installation tools and instructions (available at https://flutter.io/setup/) for Flutter have a pleasing level of polish that inspires confidence in the platform. Although there are a lot of additional components needed, once you’ve installed Flutter (by cloning the repo and adding the flutter tool to your path) you can simply run flutter doctor and a script runs that tells you very clearly what you need to set up — for cross platform dev on a macOS machine, that means Flutter and Dart tools, a Java JDK, XCode with CocoaPods, Android Studio and finally IntelliJ CE with the Flutter and Dart Plugins.

General Impressions

A good starting point to understanding Flutter is that everything is a widget — a text view is a widget, an image view is a widget, a scrollable list is a widget, a screen in the app is a widget — so when you start designing your app, decomposing it like this gives you a way in.


This gif shows the app in action — a scrollable list of 15 elements, which click through into a detail view.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store



We design and develop amazing mobile apps for iPhone and Android. Apps that get featured on the App Store