Repository navigation
A more complete app template for Flutter #76379
Description
Use case
Flutter has one starter app template: the Counter app. It gets the user going quickly, and teaches low-level basics in 66 lines of code. We don't, however, provide a template that would be closer to a complete app, with several widgets in separate files, app-wide state, navigation or state restoration.
This creates a large gap for novice users to leap over once they outgrow the one-file, one-widget, setState-only nature of Counter. And that leap lands them among a myriad of community solutions and opinions, most of which a novice user is not yet ready to review critically.
Proposal
The goal is to make it easier for developers to continue their learning journey beyond the Counter app. A developer using Android Studio, for example, should be able to click on an icon in the "New Flutter Project" screen that gives her a more complete project to work with.
This new template should co-exist with the original Counter app template. It is not a replacement.
Reqiurements
- Simplicity. It is understood that the new template will be less straightforward than the existing Counter app template. But even the new template SHOULD NOT be overwhelming to new Flutter developers, and it MUST NOT be overwhelming to experienced Flutter developers.
- Teachability. The new template SHOULD be written in a way that allows gradual learning.
- Accessibility. The new template app MUST be accessible. Screen reader navigation SHOULD be comfortable.
- Beauty. The template app SHOULD look beautiful to the extent allowed by other provisions.
- State management. The state management approach of the new template MUST make it simple for the developer to add new features in any part of the app.
- Performance. The new template MUST follow basic performance guidelines, like avoiding unnecessary rebuilds.
- Targets. The new template MUST support the following targets: mobile, desktop and web.
Activity
filiph commentedon Feb 22, 2021
Some more details are in the associated PR #76519 and a separate decision doc. Internally at Google, this is accessible under go/flutter-more-complete-template.
rahulraj64 commentedon Feb 24, 2021
@brianegan Pls add localization also to your points.
Hixie commentedon Mar 27, 2021
@goderbauer @filiph Since @brianegan ran out of time to work on this would one of you mind picking up the PR and landing it? It's almost done (#76519) but needs a little cleanup and merging.
filiph commentedon Mar 27, 2021
I'm on it, yes. We have a meeting on Monday to finalize some PM-related decisions and then we can hopefully land this.
github-actions commentedon Jul 30, 2021
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.