This week in Flutter #5
Tags: dart, flutter, news
Published: 2021-05-29 12:30:30

Last week's **Google I/O** is still lingering, and more resources have been released, in particular on the [Flutter YouTube channel](<https://www.youtube.com/channel/UCwXdFgeE9KYzlDdR7TG9cMw>). Furthermore, the [Flutter Community](<https://github.com/fluttercommunity>) has been posting new articles again.
<br /><br />

## 🧑‍💻 Development

### [Building scrolling experiences in Flutter](<https://www.youtube.com/watch?v=YY-_yrZdjGc>)

[Slivers](<https://flutter.dev/docs/development/ui/advanced/slivers>) can be used to add very neat custom **scrolling effects** to your app. In this workshop, [Kate Lovett](<https://github.com/piinks>) shows how to use them to make your user experience much more interesting.

---

### [Let’s make the Flutter Navigator 2](<https://medium.com/flutter-community/lets-make-the-flutter-navigator-2-bc5953251c3e>)

I have been fighting recently with [Flutter Navigation 2.0](<https://flutter.dev/docs/development/ui/navigation>) a couple of weeks ago. If you want to **save yourself a big headache**, read this article by [Ali Yazdi](<https://aliyazdi.tech/#/>) first, so you get an idea of what you are getting into.

---

### just\_audio tutorials

[Suragch](<https://suragch.dev>) has been busy creating tutorials on how to get started with the [`just_audio` package](<https://pub.dev/packages/just_audio>). [How to play short audio clips](<https://medium.com/flutter-community/playing-short-audio-clips-in-flutter-with-just-audio-3c80eb7eb6ea>), [how to stream audio](<https://suragch.medium.com/steaming-audio-in-flutter-with-just-audio-7435fcf672bf>), and [how to manage a playlist](<https://medium.com/flutter-community/managing-playlists-in-flutter-with-just-audio-c4b8f2af12eb>). I also wrote [some tutorials](<https://ishouldgotosleep.com/simple-flutter-music-player-app/>) on how to use `just_audio`, but I have to admit that they are **not at Suragch's level**.

---

### [Dart collections with DartX extensions](<https://medium.com/flutter-community/dart-collections-with-dartx-extensions-959a0b42849e>)

[Anna Domashych](<https://github.com/foxanna>) shows us how to work with collections **more elegantly**, by using the [dartx package](<https://pub.dev/packages/dartx>). Really, why isn't that package just part of base Dart?

---

### [Creating a Cat Voting App with Flutter](<https://bartvwezel.nl/flutter/creating-a-cat-voting-app-with-flutter/>)

[Bart van Wezel](<https://twitter.com/bartvwezel>) had some fun creating a **cat-voting app** using [the cat API](<https://thecatapi.com>). I like seeing funny projects like this one.

---

### [Improving Code Quality With Dart Code Metrics](<https://dev.to/incendial/improving-code-quality-with-dart-code-metrics-31dn>)

Static code analysis won't necessarily improve your coding skills, but it certainly helps with keeping your **coding style consistent within your organization**.<br>

[Dart Code Metrics](<https://pub.dev/packages/dart_code_metrics>) is a plugin for the Dart analyzer that reports code metrics, checks for anti-patterns, and provides additional static analysis rules. [Dmitry Krutskikh](<https://github.com/dkrutskikh>) talks about it in this article.

---

## 🧑‍🎨 Design

### [FlutterLogo (100th Widget of the Week!)](<https://www.youtube.com/watch?v=aAmP-WcI6dg>)

The Flutter YouTube channel reached the 100th widget of the week. You probably won't use this one, but it is a good reason for **celebrating**. 🎉

---

### [Colors / Numbers Game with Flutter Implicit Animations](<https://codewithandrea.com/videos/colors-numbers-game-flutter-implicit-animations/>)

[Andrea](<https://codewithandrea.com>) is one of my favorite Flutter content creators. In this video, he shows a *simple* game that uses **implicit animations**. Andrea is also releasing [a course about animations in Flutter](<https://codewithandrea.com/courses/flutter-animations-masterclass/>). I haven't had the opportunity to follow the course yet, but it is on my to-do list, and once I do, I will let you know how it is.

---

## 🗄 Backend

### [Going full-stack with Flutter and Supabase - Part 2: Database](<https://dartling.dev/full-stack-with-flutter-and-supabase-pt-2-database>)

I already mentioned [Supabase](<https://supabase.io>) in a previous issue of this newsletter. In this article, [Christos Giallouros](<https://github.com/giall>) goes deep into the database part of a Flutter/Supabase app. I like that using a **relational database for app development** has become as easy as using a Firestore instance.

---

## 🤷‍♂️ Others

### [Programming on your phone](<https://medium.com/flutter-community/programming-on-your-phone-a2547f0e293>)

We often assume that mobile developers have a computer at their disposal to create apps. [Suragch](<https://suragch.dev>) has been tasked with **teaching** a **mobile development** class for students with **no access to computers**. [This article](<https://medium.com/flutter-community/programming-on-your-phone-a2547f0e293>) reports the challenges faced during the evaluation of possible alternatives to use a computer for mobile development. While reading the article, I thought of an even simpler solution: 1. write the code and sync with GitHub, as in the article; 2. trigger a CI/CD build on [Bitrise](<https://app.bitrise.io/referral/5a5f4493d5493ac4>) that deploys the app via [Firebase App Distribution](<https://firebase.google.com/docs/app-distribution>). <br>

It will not be as fast as the proposed solution in the article because you lose instant feedback while you write code, but you **do not need a server**.<br>

[The [Bitrise](<https://app.bitrise.io/referral/5a5f4493d5493ac4>) link is a referral link].

---

### [Flutter in production: Stadia and Google Pay](<https://www.youtube.com/watch?v=9d5TR4URHrk>)

Flutter is used in production by Google. In this interesting Q/A, Google engineers discuss their **programming and design choices** for Stadia and Google Pay.