This week in Flutter #10
Recently GitHub (Microsoft) introduced Copilot, a tool that uses AI to write code. It uses OpenAI Codex, a system similar to GPT-3. If you did not understand a single word, do not worry. Watch this video from Mangirdas Kazlauskas to find out how it performs on Flutter.
Will we all be replaced by AI in the future? No idea, but they said similar things about Low Code/No Code, and that did not happen yet.
- Michele Volpato
How to make your own native library bindings with Dart FFI
In this series of articles, Maksim Lin shares his experience in using Dart FFI to be able to playback audio on Linux. I am looking forward to the next articles in the series.
Working with Firebase Cloud Firestore made easier with “withConverter()"
In version 2.2.0 of the Firestore Flutter package, the Firebase team introduced
withConverter, which allows interacting with collections/documents in a type-safe way. Chinmay Kabi shows us how to use it. I must say I added a
TODO in the projects I am working on to use it there as well.
Exploring Flutter Navigator 2.0: VRouter
I have implemented Navigation 2.0 in a couple of apps for now, and I am not very happy with it: boilerplate code and increased complexity are my major concerns with it. VRouter might make it simpler. In this article, Naveen Srivastava shows us how to get started with it. Before using it you must take into account that it replaces
Mixing packages that don’t support null safety in Flutter
What do you do when you are migrating to null-safety, but there is just one package which is not updated yet? You do not migrate! Or you can use Jordan Holland’s approach described in this article. I would go for not migrating yet. 😅
Building a Post Scheduling App with HarperDB & Flutter
This is [Alberto Bonacina](https://hashnode.com/@polilluminato)'s article for the hackathon I advertised last week. I think this is my favorite so far. It is simple and useful. He might even publish the app in the stores.
Building Complex UI in Flutter: Magic 8-Ball
A new tutorial from raywenderlich.com. Create a 3D magic 8-ball.
Unbounded height / width | Decoding Flutter
You need to watch this video from the Flutter team. Filip Hráček, with the help of some funny animations, explains what happens when you get an “Unbounded height” error. One hundred pixels!
Creating adaptive layouts with Flutter
I have been experimenting with adaptive layouts in an app I am working on with my team. The app was initially only designed for iOS and Android, but recently the client requested a web version. Happy we went with Flutter from the beginning we had “only” to adapt the layout for bigger screens. Our work also improved the app on tablets. In this article, Touré Holder shows you how to use
[adaptive_layout](https://pub.dev/packages/adaptive_layout) to start from the beginning with different screen sizes in mind, so that you do not have to fix it later on.
Cat and Mice – Part 1: CI/CD
Last week Bart van Wezel started a weekly series about creating a new Flutter app: design, implementation, publishing, and artificial intelligence. In this article, he sets up CI/CD using Codemagic.
Flutter Web: Should I use it? (Part 2— Performance)
Reme Le Hane continues the article from last week with an article on the performance of a web app developed using Flutter. The results are not encouraging. We must say that the page speed insight is calculated on first load of your web app. After
main.js has loaded, the website should get much faster.
How to build any kind of app in Flutter (and overcome Tutorial Hell)
We have all been there. You are learning a new topic and you watch tutorial after tutorial, course after course, and copy and paste code here and there. That is not how learning works. In this article, Andrea Bizzotto explains his workflow when he is learning a new topic. I would add one more state to his Learn and Practice feedback loop: try to explain the topic you are learning to someone who is not familiar with it. You can do that with an online article, or by giving a presentation to your colleagues during a recurring knowledge-sharing meeting.
Google I/O spotlight: Flutter in action at ByteDance
ByteDance got some spotlight during the latest Google I/O. In this interesting article, they share how they got Flutter into their daily workflow. The main point is: they needed to develop for multiple platforms. They also mention the valuable contributions they made to Flutter, reducing the app size, and removing janky UI. Another key point worth mentioning is that they realized it was not productive to re-implement existing products in Flutter, while it was advantageous to use it for new apps.
Top 51 Amazing 🤩 Resources to Learn Flutter & Dart
Are you just starting learning Flutter? Here is a big list of resources, put together by Kushal Goel, you can use to get up to speed. Just be careful not to get stuck in tutorial nightmare.
That’s it for this week.
If you want to comment on any of this week’s entries, you can do it in the comment section below.
Have a bug-free week,
- Michele Volpato