UPDATE: Here is a new post about the changes and improves to this app

In this short post I want to share the details about how I designed and launched my first app in the PlayStore.

Although the idea and the operation itself is very simple, I wanted to test rapid development techniques with modern platforms / technologies.

Basically, my app is a guide of ideas and tools for entrepreneurs, but with “call to actions”. These are the main features:

Inspirational message slider on the main screen. Drawer Menu to browse categories. Other complementary resources such as books and podcasts. Option to share app download link. Audio option for the app to “read” each of the ideas. It helps if you are driving or doing something else. Availability of offline content.

But in addition, from Firebase I can send “push” messages thanks to Cloud Messaging and I can also verify that users have the latest version of the app with Remote Config.

Technologies used

For the construction of the app I used Flutter, which is the cross-platform framework (Android / iOS) for mobile application development. This framework uses the DART language, also created by Google and is Open Source.

For the backend, I wanted to try a “serverless” technology, which means that you does not have to worry about the configuration and maintenance of a server from which to obtain the data.

Although there are already many options, I chosen Firebase, another Google platform specially designed for almost all the needs that an app might have. The free version is more than enough to launch an application with all the basic functions. The pricing model is based on the use of the platform so it is ideal to start.

I must mention that the integration of Firebase with Flutter was the most transparent and simple to perform following only the steps of each library.

Resources

A few months ago I took the (basic) Flutter course in Platzi, but now they have the advanced course that is surely worth seeing.

I also took the Fernando Herrera course in Udemy which is very complete.

The difference with Platzi and Udemy, is that in Platzi you will have new versions of the course (and many more) every so often while you keep your subscription active, while in Udemy you only buy one course and if a version of the technology comes out, You would have to buy another course.

Packages

The advantage of Flutter over other app development platforms, is that the platform already brings many functions that in others require the installation of multiple libraries. In my case, the largest number of libraries I included have to do directly with the integration with Firebase.

Firebase libraries:

firebase_core: ^ 0.4.0 + 6 firebase_analytics: ^ 3.0.3 cloud_firestore: ^ 0.12.7 firebase_crashlytics: ^ 0.0.4 + 10 firebase_remote_config: ^ 0.2.0 + 3 firebase_admob: ^ 0.9.0 + 1 firebase_messaging: ^ 5.1.2

Other libraries:

app_review: ^ 1.0.0 share: ^ 0.6.1 + 1 flutter_tts: ^ 0.2.6 flutter_html: ^ 0.10.4 cached_network_image: ^ 1.0.0 url_launcher: ^ 5.1.0

Marketing

As part of the promotion, I created a landing page with details of the app that you can see here. I also activated a campaign in Google Ads where I got the cost per download to cost 20 cents (USD), so with an investment of $ 25 I was able to get my first 100 downloads.

I have also shared tips and app data on Instagram Stories that allow you to place links and have received feedback and good comments from the Flutter community.

In conclusion, the development experience and uploading to Google Play Store was the fastest and I am already thinking about my next app.

I would like to know the experience of others and if you have any questions I could gladly support you, I actively participate in: https://www.facebook.com/groups/googleflutterdevelopers/ and https://www.facebook.com/groups/flutter.dart.spanish