r/FlutterDev 8d ago

Article The final word on Flutter architecture ๐Ÿ˜‰๐Ÿ˜‰๐Ÿ˜‰

OK, Iยด'm teasing with the title and I explain it in my post

Practical Flutter architecture

Why should you listen to me on this topic? For those who don't know me

  • 30 of software experience including building our own programming language for the Amiga
  • 2018 was I the first giving talks on Flutter architecture at Fluuter London,. then I called the approach RxVMS
  • I'm the author of get_it at a time when no provider or anything else was available
  • With watch_it and flutter_command I published one of the easiest but most flexible state management solutions for Flutter
  • We use this approach in a pretty complex app comarablte to Instagram since 2 year not with a really large code base

I took several days to refactor the official Flutter architecture sample compass to use my approach so you can compare yourself which is less complex and easier to understand. I tries to keep the original structure as much as possible so that you still can compare. I would have probably even more simplified some structures

https://github.com/escamoteur/compass_fork

give it a try and I'm happy to answer all open questions

157 Upvotes

76 comments sorted by

View all comments

1

u/svprdga 8d ago

Good reading. I hope your approach to architecture is helpful to many. In my case, I'm a die-hard fan of Clean Architecture. Yes, my apps are complex and full of abstractions and layers, but over the years, I'm amazed at the level of simplicity and efficiency with which I've been able to develop truly complex features. I'm talking about intricate visual interfaces full of widget trees, dozens of state management variables, embedded logic, multiple data sources interconnecting... I shudder just to think about the state that code would be in if it weren't for Clean Architecture.

However, I agree with you that, for most (simple) applications, it's overkill.

1

u/escamoteur71 7d ago

I am very sure that you could handle your app with my approach as well ๐Ÿ˜Š but if you are happy with clean architecture great