Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

☂ Land updated app architecture guidance #11374

Closed
RedBrogdon opened this issue Nov 7, 2024 · 1 comment · Fixed by #11468
Closed

☂ Land updated app architecture guidance #11374

RedBrogdon opened this issue Nov 7, 2024 · 1 comment · Fixed by #11468
Assignees
Labels
e3-weeks Effort: < 4 weeks p1-high Major but not urgent concern: Resolve in months. Update each month.

Comments

@RedBrogdon
Copy link
Contributor

RedBrogdon commented Nov 7, 2024

We're in the process of creating new code examples and docs covering application architecture (e.g. state management, networking, etc.). This issue represents the work of getting those docs reviewed and landed:

Design recipes:

@RedBrogdon RedBrogdon added p1-high Major but not urgent concern: Resolve in months. Update each month. e3-weeks Effort: < 4 weeks labels Nov 7, 2024
ericwindmill added a commit that referenced this issue Nov 21, 2024
_Description of what this PR is changing or adding, and why:_

This is the first of several PRs that add the app-architecture cookbook
recipes.

This one includes the recipe for "Optimistic State".

Some considerations:

- Code sample is under new folder `examples/app-architecture`, I plan to
add the rest of cookbook recipe code there as well.
- Created a template for a recipe index under
`src/content/app-architecture/cookbook/index.md` this is in the same
sub-path as the App-architecture guidelines in #11300.
- I did not add these recipes to the general "cookbook" of the site. But
maybe it should? Let me know if we should put them there.
- I did not create this PR on top of #11300 as it didn't seem necessary,
since it has no direct dependencies.
- Page is NOT accessible from the sidebar, instead you have to navigate
to `/app-architecture/cookbook/optimistic-state/`:
https://flutter-docs-prod--pr11394-mb-optimistic-state-r6prt6uc.web.app/app-architecture/cookbook/optimistic-state

cc. @ericwindmill 

_Issues fixed by this PR (if any):_

- Part of #11374

_PRs or commits this PR depends on (if any):_

- Depends on #11300

## Presubmit checklist

- [ ] This PR is marked as draft with an explanation if not meant to
land until a future stable release.
- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.

---------

Co-authored-by: Eric Windmill <[email protected]>
ericwindmill pushed a commit that referenced this issue Nov 21, 2024
_Description of what this PR is changing or adding, and why:_

This PR follows the same pattern as
#11394.

Adds the architecture cookbook recipes for storing key-value data and
storing complex data with SQL.

The two cookbook recipes are submitted together because they share the
"todo app" example under `examples/app-architecture/todo_app_service`.

cc. @ericwindmill 

_Issues fixed by this PR (if any):_

- Part of #11374

## Presubmit checklist

- [ ] This PR is marked as draft with an explanation if not meant to
land until a future stable release.
- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.

---------

Co-authored-by: Shams Zakhour (ignore Sfshaza) <[email protected]>
sfshaza2 added a commit that referenced this issue Nov 22, 2024
_Description of what this PR is changing or adding, and why:_

Following PRs #11410 and #11394 this PR adds the "Offline-first"
cookbook recipe for the Architecture design patterns.

_Issues fixed by this PR (if any):_

Part of #11374

_PRs or commits this PR depends on (if any):_

## Presubmit checklist

- [ ] This PR is marked as draft with an explanation if not meant to
land until a future stable release.
- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.

---------

Co-authored-by: Shams Zakhour (ignore Sfshaza) <[email protected]>
sfshaza2 added a commit that referenced this issue Dec 2, 2024
This is the second of two large PRs that add architecture guidance to
the website.

The code snippets are from [compass app in
flutter/samples](https://github.com/flutter/samples/tree/main/compass_app).
It was been thoroughly reviewed.

Resolves third task from #11374  
Fixes #11432 

## Presubmit checklist

- [x] This PR is marked as draft with an explanation if not meant to
land until a future stable release.
- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.

---------

Co-authored-by: Shams Zakhour (ignore Sfshaza) <[email protected]>
Co-authored-by: Parker Lougheed <[email protected]>
ericwindmill added a commit that referenced this issue Dec 9, 2024
_Description of what this PR is changing or adding, and why:_

This PR introduces the "Command Pattern" and "Result Class" design
pattern cookbook recipes.

Drafts were reviewed by @ericwindmill already

_Issues fixed by this PR (if any):_

Part of #11374 

_PRs or commits this PR depends on (if any):_

## Presubmit checklist

- [ ] This PR is marked as draft with an explanation if not meant to
land until a future stable release.
- [x] This PR doesn’t contain automatically generated corrections
(Grammarly or similar).
- [x] This PR follows the [Google Developer Documentation Style
Guidelines](https://developers.google.com/style) — for example, it
doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person).
- [x] This PR uses [semantic line
breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks)
of 80 characters or fewer.

---------

Co-authored-by: Eric Windmill <[email protected]>
Co-authored-by: Shams Zakhour (ignore Sfshaza) <[email protected]>
Co-authored-by: Parker Lougheed <[email protected]>
@ericwindmill
Copy link
Contributor

This will be completed when #11468 passes CI and is merged.

ericwindmill added a commit that referenced this issue Dec 11, 2024
_Description of what this PR is changing or adding, and why:_

This PR adds an 'index' page for the Design Pattern cookbook recipes
under App Architecture in the side nav.
* Adds the page
* Adds a `design-pattern.yml` file with 
* Adds an "Expansion Panel List" component (html + css)

**This is still very much a work in progress.** Before merging:
- [x] Land #11444 + add them to the data file, and create icons for
their rows
- [x] Update the `design-pattern.yml` with real data
- [x] Create the remaining needing icons (right now all four list items
use the same icon)
- [x] Replace 'LOREM IPSUM, BROTHER' 😅 

_Issues fixed by this PR (if any):_

* This will resolve #11374

---------

Co-authored-by: Parker Lougheed <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
e3-weeks Effort: < 4 weeks p1-high Major but not urgent concern: Resolve in months. Update each month.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants