办公商店应用?
Office Furniture Store app 是由 Mansuriosdev 设计的 Office Furniture Store 应用的设计实现。
截图
| 预览 | 列表画面 | 详情页面 | 购物车页 |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
?特点
• Three different implementations
• Display items on list item screen
• Display detail of each item on detail screen
• Hero animation for images when navigate fron list screen to detail screen
• Fade animation for list views
• Select quantity and color for each item
• Display item images using carousel slider
• Add desired item to favorite screen
• Add or delete item to cart
• Clear all itms from cart screen
• Automatically delete single item from cart by set its value to zero
• Real-time calculation of total price in the cart screen
• State management with GetX | cubit | bloc
目录结构 (GetX 版本)
?lib
│───main.dart
│───?core
| │──app_asset.dart
| │──app_color.dart
| │──app_data.dart
| │──app_extension.dart
| │──app_style.dart
| └──app_theme.dart
└───?src
│────?model
│ │──bottom_navigation_item.dart
| │──furniture.dart
| └──furniture_color.dart
└────?view
| │───?screen
| | |──cart_screen.dart
| | |──favorite_screen.dart
| | |──home_screen.dart
| | |──intro_screen.dart
| | |──office_furniture_detail_screen.dart
| | |──office_furniture_list_screen.dart
| | └──profile_screen.dart
| │───?widget
| | |──bottom_bar.dart
│ | |──cart_list_view.dart
│ | |──color_picker.dart
│ | |──counter_button.dart
│ | |──empty_widget.dart
│ | |──furniture_list_view.dart
│ | |──fade_in_animation.dart
| | └──rating_bar.dart
└────?controller
└──office_furniture_controller.dart
目录结构 (Cubit 版本)
?lib
│───main.dart
│───?core
│ │──app_asset.dart
│ │──app_color.dart
│ │──app_data.dart
│ │──app_extension.dart
│ │──app_style.dart
│ └──app_extension.dart
└───?src
│────?data
│ │───?model
│ │ |──bottom_navigation_item.dart
│ │ |──furniture.dart
│ │ └──furniture_color.dart
│ │───?repository
│ │ └──repository.dart
└────?presentation
│ │───?screen
│ │ |──cart_screen.dart
│ │ |──favorite_screen.dart
│ │ |──home_screen.dart
│ │ |──intro_screen.dart
│ │ |──office_furniture_detail_screen.dart
│ │ |──office_furniture_list_screen.dart
│ │ └──profile_screen.dart
│ │───?widget
│ │ |──bottom_bar.dart
│ │ |──cart_list_view.dart
│ │ |──color_picker.dart
│ │ |──counter_button.dart
│ │ |──empty_widget.dart
│ │ |──furniture_list_view.dart
│ │ └──rating_bar.dart
│ │───?animation
│ │ └──fade_in_animation.dart
└────?business_logic
└───?cubit
└──?furniture
|──furniture_cubit.dart
└──furniture_state.dart
目录结构(Bloc 版本)
?lib
│───main.dart
│───?core
│ │──app_asset.dart
│ │──app_color.dart
│ │──app_data.dart
│ │──app_extension.dart
│ │──app_style.dart
│ └──app_extension.dart
└───?src
│────?data
│ │───?model
│ │ |──bottom_navigation_item.dart
│ │ |──furniture.dart
│ │ └──furniture_color.dart
│ │───?repository
│ │ └──repository.dart
└────?presentation
│ │───?screen
│ │ |──cart_screen.dart
│ │ |──favorite_screen.dart
│ │ |──home_screen.dart
│ │ |──intro_screen.dart
│ │ |──office_furniture_detail_screen.dart
│ │ |──office_furniture_list_screen.dart
│ │ └──profile_screen.dart
│ │───?widget
│ │ |──bottom_bar.dart
│ │ |──cart_list_view.dart
│ │ |──color_picker.dart
│ │ |──counter_button.dart
│ │ |──empty_widget.dart
│ │ |──furniture_list_view.dart
│ │ └──rating_bar.dart
│ │───?animation
│ │ └──fade_in_animation.dart
└────?business_logic
└───?bloc
└──?furniture
|──furniture_bloc.dart
|──furniture_state.dart
└──furniture_event.dart
目录结构(Provider 版本)
?lib
│───main.dart
│───?core
│ │──app_asset.dart
│ │──app_color.dart
│ │──app_data.dart
│ │──app_extension.dart
│ │──app_style.dart
│ └──app_extension.dart
└───?src
│────?data
│ │───?model
│ │ |──bottom_navigation_item.dart
│ │ |──furniture.dart
│ │ └──furniture_color.dart
│ │───?repository
│ │ └──repository.dart
└────?presentation
│ │───?screen
│ │ |──cart_screen.dart
│ │ |──favorite_screen.dart
│ │ |──home_screen.dart
│ │ |──intro_screen.dart
│ │ |──office_furniture_detail_screen.dart
│ │ |──office_furniture_list_screen.dart
│ │ └──profile_screen.dart
│ │───?widget
│ │ |──bottom_bar.dart
│ │ |──cart_list_view.dart
│ │ |──color_picker.dart
│ │ |──counter_button.dart
│ │ |──empty_widget.dart
│ │ |──furniture_list_view.dart
│ │ └──rating_bar.dart
│ │───?animation
│ │ └──fade_in_animation.dart
└────?business_logic
└───?provider
└──?furniture
|──furniture_provider.dart
└──furniture_state.dart
Pull Requests
我欢迎并鼓励所有拉取请求。我通常会在 48-72 小时内回复任何问题或请求。
依赖项
| 名称 | Cubit 版本 | Bloc 版本 | GetX 版本 | Provider 版本 |
|---|---|---|---|---|
| flutter_bloc | ✔️ | ✔️ | ✖️ | ✖️ |
| GetX | ✖️ | ✖️ | ✔️ | ✖️ |
| provider | ✖️ | ✖️ | ✖️ | ✔️ |
| flutter_hooks | ✔️ | ✔️ | ✖️ | ✔️ |
| equatable | ✔️ | ✔️ | ✖️ | ✔️ |
| smooth_page_indicator | ✔️ | ✔️ | ✔️ | ✔️ |
| flutter_rating_bar | ✔️ | ✔️ | ✔️ | ✔️ |
| simple_animations | ✔️ | ✔️ | ✔️ | ✔️ |



