Which framework should I use? How to build UIs? How do things work under the hood? These are the types of questions that I’ve answered during the series of articles about Flutter and React Native.


Some time ago I started learning Flutter for fun reasons and at the same time, I (had to) started learning React Native for work reasons. While learning and using them, I started to see some differences and some common concepts between them. So I decided to share my findings with a talk in both local meetups and international conferences (If you are curious there is a talk section in the website). From this talk, I’ve extracted a series of articles and here we are!

In the first episode, I’ll introduce the two frameworks with a historical overview and an analysis of the languages that they use.

Flutter or React Native, a cross-platform dilemma - Introduction - (Part 1)i

In the second episode, I’ll start to dive into the two frameworks, by understanding how to build user interfaces. We will see that many concepts are very similar in both Flutter and React Native. The post will not cover every deep aspect and secrets of UI building, to avoid a long and boring reading. The aim is to give you an overview of the differences and the common concepts and for more details, I always suggest to give a look to the official documentation (React Native - Flutter), that I have to say, it’s very well written and detailed.

Flutter or React Native, a cross-platform dilemma - How to build User Interfaces - (Part 2)

The third episode is the most fascinating (at least for me, because I like to understand how things work) because I’ll go deeper under the hoods to understand how the two framework works. Moreover, I’ll also describe three common interesting features that Flutter and React Native shares. Also in this post, my aim is to introduce and explain then main concepts; if you are interested in more details (I understand you!) there will be some reference to follow.

Flutter or React Native, a cross-platform dilemma - How they work - (Part 3)

And finally, in the last episode, I’ll wrap things up. First I’ll make a consideration about cross-platform in general and then I’ll try to help you to choose the right framework for you. And there is also a bonus! (The intro of this post contains a spoiler about the bonus!)

Flutter or React Native, a cross-platform dilemma - How to chose + Bonus - (Part 4)

As you will read, this is not an easy choice. I think that it all depends on the product that you are going to develop, on your personal taste about programming languages and on the composition of your team. For example, Flutter is preferable for an app with fancy UIs with lots of animations and complex layouts. Maybe you don’t like Javascript at all (like me) or you have a majority of web dev in your team. That’s why I like to say that going cross-platform it’s a choice with compromises based on specific situations.

I hope that this series will be helpful to make the right decision. If you want to share your consideration and what led you to choose between Flutter and React Native, you can drop a comment below or tweet me @marcoGomier