brianegan / brianegan/new_flutter_template

What Architecture should the app employ?

Open
#2 14 comments 0 reactions 0 assignees View on GitHub
Dominant language
Dart
Stars
138
Forks
21
PR merge metrics
No merged PRs in 30d

Description

Beginner/Intermediate Flutter developers have asked for concrete guidance on how to structure Flutter apps. What kind of structure should the new template demonstrate?

- [No Explicit Structure](https://github.com/brianegan/new_flutter_template/tree/main/evaluations/list_detail_breadcrumbs) -- Leave Architecture guidance up to Community exploration
- [MVC with ChangeNotifiers as Controllers](https://github.com/brianegan/new_flutter_template/tree/main/evaluations/list_detail_mvc)
- [MVC with ValueNotifiers as Controllers](https://github.com/brianegan/new_flutter_template/tree/main/evaluations/list_detail_mvc_value_notifier)
- MVC with Community Package as Controller ([Bloc/Cubit](https://github.com/brianegan/new_flutter_template/tree/main/evaluations/list_detail_mvc_cubit), [Mobx](https://github.com/brianegan/new_flutter_template/tree/main/evaluations/list_detail_mvc_mobx), [StateNotifier](https://github.com/brianegan/new_flutter_template/tree/main/evaluations/list_detail_mvc_state_notifier))
- Clean Architecture
- Other (Please describe!)

Note: Most popular Flutter libraries separate Data Logic from Widgets, with some kind of object that connects them together. For the purposes of this question, we'll refer to this structure as MVC: Model (Data), View (Flutter Widgets), Controller (Object that connects Model to View). If you disagree with the naming, [please visit the naming discussion](https://github.com/brianegan/new_flutter_template/issues/3)

Contributor guide

No contributing guide indexed for this repository

Research direction

Compare the example structures under evaluations/list_detail_breadcrumbs, evaluations/list_detail_mvc, and the notifier and community-package variants linked in the issue. Read the naming discussion in issue #3, then document a justified architecture choice for the new template; done means the project has a clear, agreed structure to demonstrate.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart, flutter
Domain
mobile-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.