3 min read

This week in Flutter #79

Black Friday deal?

There is a big black Friday sale on Kodeco. I am biased because I occasionally do some tech editing work at Kodeco. Books and courses are created by passionate developers, and you should have a look at what is available for Flutter. Kodeco is the new raywenderlich.com.

Related to resources to learn Flutter I will have an announcement in the next issue of this newsletter. Stay tuned!

- Michele Volpato

Development 🧑‍💻

Responsive design in Flutter, the easy way

by Egon Meijers

Since Flutter 3, you can extend ThemeExtension to make theming your app easier. In this article, you learn how to create theme extensions for text styles and spacing values. You also learn how to effectively use them to improve the layout responsiveness of your app.

Beware of FlutterSecureStorage on iOS

by Isuru

This has happened to me in the past. You are testing your Flutter app on iOS, you log in with a certain account, then remove the app and install it again. And you are still logged in. Why does that happen? And how can you fix it?

Creating Widgets

by Stephan E.G. Veenstra

When everything is a widget, it is too easy to get business logic code in the UI and vice versa. Stephan makes a distinction between destination widgets -like screens, pages, and modals- and component widgets, which have to follow some strict rules to keep your Flutter codebase reusable and maintainable.

Dart Extensions Tutorial: Improve your Flutter Code

by Sébastien Bel

This a perfect tutorial if you are new to Dart extensions, and the app used in it is adorable. Worth having a look even if you do not need to learn about Dart extensions.

Facilitate app updates with Flutter upgrader

by Alejandro Ulate Fallas

Sooner or later you will need to make sure that the users of your app will update it to a certain version. You can help them by using the upgrader. Setup and configuration can be difficult to get right, so learn how to use it in this article.

Segmented State Pattern with DelayedResult

by Daria Orlova

A nice approach to handling success, in-progress, and error states for an asynchronous request in Dart. Daria also gives other possible ways to solve the problem, explaining their weaknesses.

Backend 🗄

Flutter Authentication and Authorization with RLS

by Tyler Shukert

Supabase is an open-source backend that you can self-host. You can see it as an alternative to Firebase and Appwrite, in particular if you want to use a relational database. This article is a tutorial on using Flutter as a frontend for a Supabase backend. You might want to read the first part of the tutorial before diving into this article.

I like the separation of the two articles, you learn about updating the database schema, about deeplinks, needed to open the app after the user confirms their email address, and about adding authentication, which is the main subject of this article.

Tools 🛠

Flutter CI/CD using GitHub Actions

by Himanshu Sharma

If you host your code on GitHub, you can make use of GitHub Actions to deploy a new version of your app by just pushing changes to your main branch. In this article, you learn how to deploy a version of your app to the Google Play Console and GitHub Pages.


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

Subscribe to this newsletter

Receive an email every week with curated content about Dart and Flutter.

    We won't send you spam. Unsubscribe at any time.