This week in Flutter #35
Tags: flutter, dart, news
Published: 2022-01-02 17:49:05

Last week there was no newsletter because it was Christmas. So this issue contains **more links than usual**.
And the Flutter team published a lot of videos in the last two weeks, so there is plenty to watch.

This week I have been using [build-time environment variables](https://dartcode.org/docs/using-dart-define-in-flutter/)
to simplify [flavors](https://docs.flutter.dev/deployment/flavors) in some of the Flutter apps I am working on.
I find it **more maintainable** compared to having a _main_ file for each flavor.

How are you improving the maintenance of your Flutter app? Do you implement these small changes to make
future work easier? Let me know by [leaving a comment](https://ishouldgotosleep.com/news/this-week-in-flutter-35/#comments).

<small>- Michele Volpato</small>

## Development 🧑‍💻

### 🔗 [Visualize the Flutter render tree with Explo](https://medium.com/@gabriel.terwesten/visualize-the-flutter-render-tree-with-explo-49318cf24251)

Do you miss the _Debug View Hierarchy_ from **Xcode**? The
[Explo](https://pub.dev/packages/explo) package attempts to
recreate that exact feature in Flutter. Read how to use it
in this article by [Gabriel Terwesten](https://github.com/Blaugold).

### 🔗 [Event-Based Flutter Example](https://bartvwezel.nl/flutter/event-based-flutter-example/)

Read how to implement the [publisher-subscriber pattern](https://en.wikipedia.org/wiki/Publish–subscribe_pattern) using the
`event_bus` package in this new article by [Bart van Wezel](https://github.com/Barttje).

### 🔗 [Weekend App: 3D Print Cost Calculator](https://remelehane.dev/posts/weekend-app-3d-print-cost-calculator/)

Do you want to know how much a **3D printer would cost** you? [Reme Le Hane](https://github.com/RemeJuan) created an app for that.
He writes about it, and the technologies he used, in this article.

### 🔗 [How to implement a shimmer effect in Flutter](https://blog.logrocket.com/implement-shimmer-effect-flutter/)

In this article, by [David Adegoke](https://github.com/Blazebrain), you'll learn how to replace those ugly circular progress
indicators with a much better, from the user experience point of view, **shimmering effect**.

### 🔗 [Flutter – How to deal with global variables](https://bartvwezel.nl/flutter/flutter-how-to-deal-with-global-variables/)

**Global variables** are frowned upon by many developers. You should avoid having a global state that can be modified and accessed by
any object anywhere in your code.
In the article [Event-Based Flutter Example](https://bartvwezel.nl/flutter/event-based-flutter-example/), linked
above, [Bart van Wezel](https://github.com/Barttje) uses a global variable in the example code. In this article,
he proposes other solutions to get rid of it.

### 🔗 [How to add Firebase to a Flutter app with FlutterFire CLI (including multiple flavors)](https://codewithandrea.com/articles/firebase-flutterfire-cli-flavors/)

With the latest version of Flutter, you can delete the old `GoogleService-Info.plist` and `google-services.json` files,
and replace them with a Dart file **generated** with the new [FlutterFire CLI](https://pub.dev/packages/flutterfire_cli).
Learn how in this tutorial by [Andrea Bizzotto](https://github.com/bizz84/).

## Backend 🗄

### 🔗 [Announcing Appwrite Dart SDK 2.0](https://dev.to/appwrite/announcing-appwrite-dart-sdk-20-50a1)

There is an update of the _Dart_ SDK for Appwrite, the **open-source
backend server** that winks at Firebase. In October they released
a new version of the _Flutter_ SDK, and now they updated the Dart
one as well. Read what's new in this article by [Damodar Lohani](https://github.com/lohanidamodar).

## Tools 🛠

### 🔗 [Introducing Nylo v2.2.3 for Flutter | Micro-framework](https://medium.com/@agordn52/introducing-nylo-v2-2-3-for-flutter-micro-framework-121e89756a9c)

[Nylo](https://nylo.dev) is a collection of tools that makes it
**easier** for a developer **to create a Flutter app**. It includes a route
file that you can customize for route management, some configuration files,
and tools like an app icon generator. I haven't tried it yet. It
sounds to me that I am adding "one more tool" I need to keep updated.
But don't let yourself be scared by my doubts. Try it. Nylo is
maintained by [Anthony Gordon](https://github.com/agordn52).


[...]

Read the rest on [my website](https://ishouldgotosleep.com/news/this-week-in-flutter-35/).

[Join the Flutter and Dart newsletter](https://ishouldgotosleep.com/subscribe-to-the-newsletter-devto/) and receive it weekly in your inbox.