Posts

Showing posts from July, 2023

Get a better understanding of your Flutter Riverpod dependency graph with the riverpod_graph markup generator

Image
Pictures make it easier to understand how an application is wired together.  This is especially true if your application is reactive with different modules listening for changes and making data changes.  Riverpod has a graph generator that can show you how its providers are wired together. Opt 1: Use a checked-out copy of the Riverpod GitHub repo I generated the following diagram for the example todos application using these riverpod_graph  commands. They assume that I have the Riverpod git repository checked out and that I am in a terminal sitting in the root of the repository.  The riverpod_graph command accepts the analysis target root as a parameter. I explicitly specified the lib directory here to make sure we didn't pick up any dependencies on utilities or tests. This approach makes sense if you think you want to work on the riverpod_graph project or that you always want the latest from git and don't want to remember to activate later versions. mermaid.js format .../ rive

The unfortunate result when a corporate goal is shortened to be conference room names.

Image
Are there topic restrictions when meeting in this room?

When music loving engineers are allowed to name conference rooms

Image
 I like this conference room because it is technical humor without involving stereotypical nerd culture, Revision History Created 2023 07

Flutter Cupertino and Material or Fuchsia APIs are different enough to require switches or wrappers for the native look and feel.

Image
Flutter lets you write once and then run anywhere with the native look and feel.  It turns out that getting the native look and feel on mobile devices means using Flutter platform-specific libraries that expose the platform differences. Users expect platform-specific behavior, especially on mobile devices. You either bury switches everywhere in your code or you wrap them. This includes a demonstration of the Material and IOS date pickers and a wrapper that hides their differences from the rest of your code.   References YouTube walkthrough Flutter device Widget wrappers - You'll be wrapping IOS, Fuchsia, and Material widgets everywhere. Code Samples  https://github.com/freemansoft/Flutter-AdaptiveCards Strategies There are really three main strategies for handling mobile device native behavior. Ignore native behavior:  Pick a single interface standard, say Material  in flutter, and force all the users to use it no matter what type of device they have.  This is the simplest develo