mono0926/wdb106-flutter
WEB+DB PRESS Vol.106のAndroid・iOSアプリ設計のサンプルをFlutterではどう書くか
- Stars
- 332
- Forks
- 30
- 最終プッシュ(UTC)
- 2025/09/12
- プロジェクト状態
- 公開中
言語DartC++CMakeSwiftCHTMLKotlinObjective-C
技術トピック
使用している依存関係
依存関係一覧 21 件
- flutter
{"sdk":"flutter"} - flutter_riverpod
— - freezed_annotation
— - gap
— - go_router
— - http
— - intl
— - meta
— - riverpod_annotation
— - simple_logger
— - build_runner開発用
— - custom_lint開発用
— - flutter_test開発用
{"sdk":"flutter"} - freezed開発用
— - go_router_builder開発用
— - image_test_utils開発用
{"git":{"url":"https://github.com/michaelgobbers/image_test_utils","ref":"6160ecc"}} - json_serializable開発用
— - mocktail開発用
— - pedantic_mono開発用
— - riverpod_generator開発用
— - riverpod_lint開発用
—
ランキング
元の README
以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。
README を開く / 閉じる
wdb106_sample
- WEB+DB PRESS Vol.106 の特集 1 の「実践 Android/iOS アプリ設計」のサンプルを Flutter ではどう書くのかというサンプル
- 元のサンプルは サポートページ:WEB+DB PRESS Vol.106 からダウンロード可能
内容概要
- 以下のパッケージを組み合わせたパターン
- 自動テストをほぼ網羅
- 自動スモークテスト(Widget テスト)も対応
- JSON API は https://dummyjson.com/custom-response で用意
- https://github.com/mono0926/wdb106-flutter/blob/main/response.jsonc
| 商品リスト | カート |
|---|---|
| 商品リスト | カート |
Provider graph
Generated by https://github.com/rrousselGit/riverpod/tree/master/packages/riverpod_graph
flowchart TB
subgraph Arrows
direction LR
start1[ ] -..->|read| stop1[ ]
style start1 height:0px;
style stop1 height:0px;
start2[ ] --->|listen| stop2[ ]
style start2 height:0px;
style stop2 height:0px;
start3[ ] ===>|watch| stop3[ ]
style start3 height:0px;
style stop3 height:0px;
end
subgraph Type
direction TB
ConsumerWidget((widget));
Provider[[provider]];
end
_ItemListView((_ItemListView));
itemStocksProvider ==> _ItemListView;
_CartButton((_CartButton));
cartProvider ==> _CartButton;
cartProvider ==> _CartButton;
ItemTile((ItemTile));
itemStocksProvider ==> ItemTile;
itemQuantityProviders ==> ItemTile;
_AddButton((_AddButton));
itemQuantityProviders ==> _AddButton;
cartProvider -.-> _AddButton;
CartPage((CartPage));
cartProvider --> CartPage;
_CartListView((_CartListView));
cartProvider ==> _CartListView;
CartHeader((CartHeader));
cartPriceProvider ==> CartHeader;
CartTile((CartTile));
itemStocksProvider ==> CartTile;
cartProvider ==> CartTile;
cartProvider -.-> CartTile;
App((App));
routerProvider ==> App;
itemStocksProvider[[itemStocksProvider]];
httpClientProvider ==> itemStocksProvider;
httpClientProvider[[httpClientProvider]];
itemQuantityProviders[[itemQuantityProviders]];
itemStocksProvider ==> itemQuantityProviders;
cartProvider ==> itemQuantityProviders;
cartProvider[[cartProvider]];
cartPriceProvider[[cartPriceProvider]];
cartProvider ==> cartPriceProvider;
itemStocksProvider ==> cartPriceProvider;
routerProvider[[routerProvider]];