Architectural Challenges: My Flutter Frankenstein

The Bottom line: I really like Flutter. It has been extremely challenging at times, but the lessons learned from those challenges have been mostly fundamental and insightful. My first major challenge with Flutter came in October when I found I could not update multiple Flutter widgets from various 'reactive' sources using Flutter's Provider package. I got to a point in my app development where I just couldn't get the code to do what I needed it to do. Thus began an architectural journey... Scouring the web, I tried dozens of variations with every aspect of Flutter's Provider package I could find information on. I came close to succeeding a couple times, but always, always hit a solid road block towards the end of each implementation. In the end, my entire codebase felt really... procedural (read, cluttered). I felt claustrophobic in my own code, and could not make heads or tails of all the different flows (and I've got plenty of Draw.io diagrams to show for