FLUTTER ECOSYSTEM

SinaSys/flutter_office_furniture_store_app

🎲 GetX | bloc | cubit | Provider | riverpod를 사용한 Flutter 사무용 가구 매장 앱

flutter_office_furniture_store_app 프로젝트 이미지
Stars
214
Forks
48
최근 푸시(UTC)
2026. 6. 26.
프로젝트 상태
활성
Sina  GitHub avatar
GITHUB User

Sina ↗

언어DartC++CMakeHTMLCSwiftKotlinObjective-C

기술 주제

사용 중인 의존성

의존성 목록 8 개

순위

원본 README

아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.

README 펼치기 / 접기

office_furniture_store_app

https://img.shields.io/github/stars/SinaSys/flutter_office_furniture_store_app https://img.shields.io/github/forks/SinaSys/flutter_office_furniture_store_app https://img.shields.io/github/actions/workflow/status/SinaSys/flutter_office_furniture_store_app/main.yml?branch=master&label=CI%20&logo=github https://img.shields.io/github/v/release/SinaSys/flutter_office_furniture_store_app?label=Release&logo=semantic-release https://img.shields.io/github/last-commit/SinaSys/flutter_office_furniture_store_app?label=Last%20commit

Office Furniture Store app is a design implementation of Office Furniture Store app designed by Jonatan

https://github.com/SinaSys/flutter_office_furniture_store_app/blob/master/screenshots/office_furniture_store_app.jpg?raw=true


GetX | Cubit | Bloc | Provider | Riverpod

• Access to different versions
Version Bloc Cubit Getx Provider Riverpod
Branch Source
(bloc branch)️
Source
(cubit branch)
Source
(master branch)
Source
(provider branch)
Source
(riverpod branch)

Screenshots

Preview List screen Detail Screen Cart Screen
https://github.com/SinaSys/flutter_office_furniture_store_app/blob/master/screenshots/preview.gif?raw=true https://github.com/SinaSys/flutter_office_furniture_store_app/blob/master/screenshots/office_furniture_list_screen.png?raw=true https://github.com/SinaSys/flutter_office_furniture_store_app/blob/master/screenshots/office_furniture_detail_screen.png?raw=true https://github.com/SinaSys/flutter_office_furniture_store_app/blob/master/screenshots/cart_screen.png?raw=true

🚀 Features :

• Five 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 | Provider | Riverpod

Dependencies

Name Cubit
version
Bloc
version
GetX
version
provider
version
riverpod
version
flutter_bloc ✔️ ✔️ ✖️ ✖️ ✖️
GetX ✖️ ✖️ ✔️ ✖️ ✖️
provider ✖️ ✖️ ✖️ ✔️ ✖️
flutter_hooks ✔️ ✔️ ✖️ ✔️ ✖️
hooks_riverpod ✖️ ✖️ ✖️ ✖️ ✔️
equatable ✔️ ✔️ ✖️ ✔️ ✔️
smooth_page_indicator ✔️ ✔️ ✔️ ✔️ ✔️
flutter_rating_bar ✔️ ✔️ ✔️ ✔️ ✔️
simple_animations ✔️ ✔️ ✔️ ✔️ ✔️

Directory Structure (GetX version)

📂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

Directory Structure (Cubit version)

📂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

Directory Structure (Bloc version)

📂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

Directory Structure (Riverpod version)

📂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_provider.dart
              └──furniture_state.dart

Directory Structure (Provider version)

📂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

Created & Maintained By

SinaSys


Other flutter projects

Project Name Stars
Go rest app GitHub stars
Japanese restaurant app GitHub stars
Ecommerce app GitHub stars