Below you will find pages that utilize the taxonomy term “Flutter”
Material 3 Flutter 3.16.0 Broke Pi Garage Theme
What happened?
The release of Flutter 3.16.0 introduced something that caught me out and broke the theme in the Pi Garage companion mobile app.
lthough Material 3 has been “opt in” for quite a while (I couldn’t find since when) it is only in 3.16.0 breaking changes you can see that this version has flipped the default value for the flag (useMaterial3) from false to true.
In the Pi Garage mobile app I did not set this flag to false when it was introduced as well as I didn’t lock the version of Flutter in the GitHub action that built and deployed the Android and iOS apps.
Pi Garage V2
It’s been a while since Pi Garage V2 has been released and I have not mentioned it on my socials. Since this is a major release I thought I would go into a bit of detail on to why I decided to make a major release version bump as well as the nitty gritty to what changed.
V1 Problems
Although V1 worked it had a pretty big flaw in my opinion and it was related to how it handled the sequences. To rewind, in Pi Garage a sequence is the actual hardware “actions” that take place when a door is “opened”, “closed” or “toggled”.
Pi Garage V1.8.0
Pi Garage version 1.8.0 has been released. In this version the mobile app has been given the ability to have multiple configurations saved.
The main driver for this was so that other people who had a Pi Garage could simply give you the configuration details and you could add this as a second (or even tenth). Before this you would have to destructively edit your existing configuration which would be a pain if you had a complex API key.
Pi Garage Mobile App
Along with the backend part of Pi Garage I really wanted to have a mobile app (both iOS and Android) so that it would be easy for users to use Pi Garage without having to configure a 3rd party app (like Home Assistant) or via an API page (like Swagger).
I have had experience with React Native and found the experience akin to fingernails on chalkboard. I wanted to use something that had a better developer (and maintainer) experience.