core:
• config/app_config.dart:
Menyimpan konfigurasi utama aplikasi seperti URL API, pengaturan tema, dan k
• utils/route_utils.dart:
Mengelola semua rute dan perpindahan antar layar da
• global_component:
string_constants.dart: Menyimpan
image_constants.dart: Menyimpan jal
color_constants.dart: Men
features:
2.1 product:
• models:
product_model.dart: Menyname, price,imageUrl, dan description. category_model.dart: Menid dancategorycategoryName.
• view_models:
product_list_view_model.dart: Mengelola log
product_detail_view_model.dart: Mengel
• views:
product_list_view.dart: Menampilkan daftarListView atau GridViewGridView. product_detail_view.dart: Menampilkan 2.2 cart: • models: cart_item_model.dart: Menproduct, quantity, dantotalPrice. • view_models: cart_view_model.dart: Mengelola • views: cart_view.dart: Me 2.3 orders: • models: order_model.dart: MenorderId,orderorderDate, dan orderItems.
• view_models:
order_view_model.dart: Mengelola logika bisnis untuk menampilkan riwayat pesanan pengguna.
• views:
order_history_view.dart: Menampilkan daftar riwayat pesanan pengguna.
2.4 profile:
• models:
user_model.dart: Menyimpan data pengguna seperti name, email, dan address.
• view_models:
profile_view_model.dart: Mengelola data profil pengguna dan memungkinkan pengguna untuk memperbarui informasi mereka.
• views:
profile_view.dart: Menampilkan dan memungkinkan pengeditan data profil pengguna.
data:
• repositories:
product_repository.dart: Mengelola pengambilan data produk dari API atau sumber data lainnya.
order_repository.dart: Mengelola data terkait pemesanan, termasuk penyimpanan lokal dan pengambilan dari API.
api:
• product_api.dart: Menyimpan logika untuk memanggil API yang berkaitan dengan data produk, seperti mengambil daftar produk atau detail produk.
local_storage:
• shared_preferences_helper.dart: Mengelola penyimpanan data lokal menggunakan SharedPreferences, seperti menyimpan status login atau daftar item favorit.
main.dart:
• main.dart: File utama yang memulai aplikasi, menginisialisasi rute, dan menjalankan widget utama aplikasi.
lib : ├── core: │ ├── config: │ │ └── app_config.dart │ ├── utils : │ │ └── route_utils.dart │ └── global_component : │ ├── string_constants.dart │ ├── image_constants.dart │ └── color_constants.dart ├── features : │ ├── product : │ │ ├── models : │ │ │ ├── product_model.dart │ │ │ └── category_model.dart │ │ ├── view_models : │ │ │ ├── product_list_view_model.dart │ │ │ └── product_detail_view_model.dart │ │ └── views : │ │ ├── product_list_view.dart │ │ └── product_detail_view.dart │ ├── cart : │ │ ├── models : │ │ │ └── cart_item_model.dart │ │ ├── view_models : │ │ │ └── cart_view_model.dart │ │ └── views : │ │ └── cart_view.dart │ ├── orders : │ │ ├── models : │ │ │ └── order_model.dart │ │ ├── view_models : │ │ │ └── order_view_model.dart │ │ └── views : │ │ └── order_history_view.dart │ └── profile : │ ├── models : │ │ └── user_model.dart │ ├── view_models : │ │ └── profile_view_model.dart │ └── views : │ └── profile_view.dart ├── data : │ └── repositories : │ ├── product_repository.dart │ └── order_repository.dart ├── api : │ └── product_api.dart ├── local_storage : │ └── shared_preferences_helper.dart └── main.dart
description. category_model.dart: Menid dan
categorycategoryName. • view_models: product_list_view_model.dart: Mengelola log product_detail_view_model.dart: Mengel • views: product_list_view.dart: Menampilkan daftarListView atauGridViewGridView. product_detail_view.dart: Menampilkan 2.2 cart: • models: cart_item_model.dart: Menproduct, quantity, dantotalPrice. • view_models: cart_view_model.dart: Mengelola • views: cart_view.dart: Me 2.3 orders: • models: order_model.dart: MenorderId,
orderorderDate, dan orderItems. • view_models: order_view_model.dart: Mengelola logika bisnis untuk menampilkan riwayat pesanan pengguna. • views: order_history_view.dart: Menampilkan daftar riwayat pesanan pengguna. 2.4 profile: • models: user_model.dart: Menyimpan data pengguna seperti name, email, dan address. • view_models: profile_view_model.dart: Mengelola data profil pengguna dan memungkinkan pengguna untuk memperbarui informasi mereka. • views: profile_view.dart: Menampilkan dan memungkinkan pengeditan data profil pengguna.