my_package

A new Flutter project.

1. Cấu trúc source code

lib/
├── src/
│   ├── core/                     # Chứa các utilities chung cho app
│   │   ├── utils/                # Utilities chung cho app
│   │   │   ├── app_log.dart      # Log app
│   │   │   ├── app_settings.dart # Cấu hình app
│   │   │   ├── app_storages.dart # Quản lý lưu trữ (SharedPreferences/LocalStorage)
│   │   │   ├── app_utils.dart    # Các function tiện ích chung
│   │   │   ├── observable_utils.dart # Các tiện ích cho Observable
│   │   ├── models/               # Các mô hình dữ liệu chung (BaseResponseModel, Failure, PaginationModel...)
│   │   │   ├── base_response_model.dart
│   │   │   ├── failure.dart
│   │   │   ├── pagination_model.dart
│   ├── views_new/                # Các màn hình mới của ứng dụng
│   │   ├── example/              # Ví dụ cụ thể về các màn hình, feature
│   │   │   ├── utils/            # Các utility cụ thể cho màn hình đó (ví dụ template_utils.dart)
│   │   │   ├── view_model/       # ViewModels, controllers cho màn hình
│   ├── repositories/             # Các Repository quản lý data, API calls
│   │   ├── base_repository_new.dart  # Repository cơ bản bạn cung cấp ở trên
│   ├── services/                 # Các dịch vụ API, HTTP Client (Dio, HTTP request)
│   │   ├── api_service.dart      # Các lớp giúp bạn xử lý API request chung cho app
│   ├── enums/                    # Các enum sử dụng trong app
│   │   ├── http_method_enum.dart # Enum cho các HTTP method (GET, POST, PUT, DELETE)
│   ├── shared_template/          # Các thư viện tái sử dụng chung
│   │   ├── models/               # Các model dùng chung
│   │   │   ├── request_upload_file_model.dart
│   │   ├── utils/                # Các utilities dùng chung cho nhiều phần của app
│   │   ├── enums/                # Các enum dùng chung
│   ├── main.dart                 # Entry point của ứng dụng Flutter
└── pubspec.yaml                  # Cấu hình dependencies của Flutter

## 2. Mô tả các thư mục chính:
- core/: Chứa các tiện ích (utilities) và cấu hình toàn cục cho ứng dụng như log, settings, lưu trữ dữ liệu (SharedPreferences, Hive), các công cụ tiện ích như observable_utils.dart, app_utils.dart.

- models/: Chứa các mô hình dữ liệu (data models) như BaseResponseModel, Failure, PaginationModel, và các mô hình khác dùng chung trong toàn bộ ứng dụng.

- views_new/: Thư mục này chứa các màn hình (screens) và các phần liên quan đến giao diện người dùng. Các view_model cho từng màn hình sẽ ở trong đây.

- repositories/: Chứa các repository như BaseRepositoryNew, nơi bạn xử lý các yêu cầu API, logic nghiệp vụ, và giao tiếp với data layer. Mỗi repository nên là một lớp riêng biệt.

- services/: Chứa các dịch vụ xử lý các kết nối API, các service liên quan đến HTTP Client. Ví dụ, bạn có thể tạo một lớp ApiService để gọi API.

- shared_template/: Đây là nơi bạn đặt các thư viện và phần dùng chung cho nhiều project khác nhau, như các mô hình request_upload_file_model.dart và http_method_enum.dart.

- enums/: Dành cho các Enum sử dụng toàn bộ dự án như HttpMethodEnum.

flutter pub publish --dry-run

Libraries

core/components/index
core/components/indicators/skeleton_loading
core/repositories/index
core/services/index
core/state/index
core/template_core/extend_views/example_confirmation/example_confirmation_cubit
core/template_core/extend_views/example_selection/example_selection_cubit
core/template_core/extend_views/schema_testing/schema_testing
core/template_core/extend_views/schema_testing/schema_testing_cubit
core/template_core/extend_views/schema_testing/views/create_view
core/template_core/extend_views/schema_testing/views/detail_view
core/template_core/extend_views/schema_testing/views/list_view
core/template_core/extend_views/schema_testing/views/update_view
core/template_core/extend_views/workflow/create_workflow_cubit
core/template_core/extend_views/workflow/widgets/default_section
core/template_core/extend_views/workflow/widgets/page_item
core/template_core/extend_views/workflow/widgets/summary_step
core/template_core/extend_views/workflow/workflow_cubit
core/template_core/index
core/template_core/utils/field_display_factory
core/template_core/utils/field_form_factory
core/template_core/views/create_view/create_cubit
core/template_core/views/create_view/widgets/form_render
core/template_core/views/delete_view/delete_cubit
core/template_core/views/detail_view/detail_cubit
core/template_core/views/list_view/list_cubit
core/template_core/views/list_view/list_state
core/template_core/views/list_view/widgets/detail_action_widget
core/template_core/views/list_view/widgets/section_filter
core/template_core/views/list_view/widgets/section_list_view
core/template_core/views/list_view/widgets/tablet/example_tablet_view
core/template_core/views/list_view/widgets/tablet/responsive_table
core/template_core/widgets/view_fields/array_display
core/template_core/widgets/view_fields/boolean_display
core/template_core/widgets/view_fields/date_display
core/template_core/widgets/view_fields/image_display
core/template_core/widgets/view_fields/number_display
core/template_core/widgets/view_fields/select_display
core/template_core/widgets/view_fields/text_display
core/theme/index
core/utils/index
flutter_core_9s