diff --git a/CHANGELOG.md b/CHANGELOG.md index 41cc7d8..a90c175 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +# Changelog + +All notable changes to this project will be documented in this file. + ## 0.0.1 -* TODO: Describe initial release. +### Initial Release +A comprehensive UI toolkit and utility library specifically designed for creating MIH Packages. This version includes a curated set of widgets, forms, and design utilities. + +* **Form Elements**: Includes `MihButton`, `MihForm`, `MihTextFormField`, `MihDateField`, `MihTimeField`, and `MihDropdownField`, `MihSearchBar`, for streamlined data entry. +* **Navigation & Layout**: Complex structural components like `MihPackage`, `MihPackageTitle`, `MihPackageAction`, `MihPackageTools`, `MihPackageToolBody`, `MihPackageWindow`, `MihSingleChildScroll`, and `MihFloatingMenu`, . +* **Feedback & Progress**: Pre-styled `MihSnackBar` and `MihLoadingCircle` for user interaction. +* **Design Tokens**: Built-in access to `MihColors` and `MihIcons` to ensure brand compliance. +* **Specialized Controls**: Widgets like `MihNumericStepper`, `MihRadioOptions`, and `MihToggle`. \ No newline at end of file diff --git a/README.md b/README.md index a606fe2..559e979 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,23 @@ - - # mih_package_toolkit -A comprehensive UI toolkit and utility library specifically designed to help developers build **MIH Packages** for the MIH app ecosystem. +A comprehensive UI toolkit and utility library specifically designed to help developers build **MIH Packages** for the MIH Project ecosystem. -This toolkit provides a curated set of widgets, forms, and design utilities—ranging from custom buttons and input fields to complex layout components like floating menus and package windows. - ---- +This toolkit provides a curated set of widgets, forms, and design utilities-ranging from custom buttons and input fields to complex layout components like floating menus and package windows. ## Features This toolkit provides everything you need to maintain visual and functional consistency within the MIH ecosystem: -* **Form Elements**: Includes `MihForm`, `MihTextField`, `MihDateField`, and `MihDropdownField` for streamlined data entry. -* **Navigation & Layout**: Complex structural components like `MihFloatingMenu`, `MihPackageWindow`, and `MihPackageToolBody`. +* **Form Elements**: Includes `MihButton`, `MihForm`, `MihTextFormField`, `MihDateField`, `MihTimeField`, and `MihDropdownField`, `MihSearchBar`, for streamlined data entry. +* **Navigation & Layout**: Complex structural components like `MihPackage`, `MihPackageTitle`, `MihPackageAction`, `MihPackageTools`, `MihPackageToolBody`, `MihPackageWindow`, `MihSingleChildScroll`, and `MihFloatingMenu`, . * **Feedback & Progress**: Pre-styled `MihSnackBar` and `MihLoadingCircle` for user interaction. * **Design Tokens**: Built-in access to `MihColors` and `MihIcons` to ensure brand compliance. * **Specialized Controls**: Widgets like `MihNumericStepper`, `MihRadioOptions`, and `MihToggle`. +## Demo + +MIH Package Demo + ## Getting started To use this library, Add the package to your `pubspec.yaml`: @@ -57,7 +46,6 @@ class ExamplePackage extends StatefulWidget { } class _ExamplePackageState extends State { - int selectedbodyIndex = 0; // Important for state management of the body @override Widget build(BuildContext context) { @@ -75,6 +63,8 @@ class _ExamplePackageState extends State { ); } + int selectedbodyIndex = 0; // Important for state management of the body + Widget actionButton() { return MihPackageAction( icon: Icon(Icons.arrow_back), @@ -127,10 +117,12 @@ For more details about MIH Package Toolkit, including usage instructions and upd ### Contributing Contributions are welcome! If you'd like to improve the package, please fork the repository, make your changes, and submit a pull request. For major changes, please open an issue first to discuss what you would like to change. -### Reporting Issues -If you encounter any bugs or have feature requests, please file an issue on the [MIH Gitea Issues page](https://git.mzansi-innovation-hub.co.za/yaso_meth/mih_package_toolkit/issues). Provide as much detail as possible to help us address the problem promptly. +### Reporting Issues/ Feature Requests +If you encounter any bugs or have feature requests, please log an issue on the [MIH Gitea Issues page](https://git.mzansi-innovation-hub.co.za/yaso_meth/mih_package_toolkit/issues). Provide as much detail as possible to help us address the problem promptly. ### Support and Response We strive to respond to issues and pull requests in a timely manner. While this package is maintained voluntarily, we appreciate your patience and community involvement. +If you would like to support the MIH development team directly, please feel free to contribute to the [MIH Project via DonaHub](https://donahub.co.za/campaigns/mih-project) + Thank you for using the MIH Package Toolkit! \ No newline at end of file diff --git a/assets/mih_package_toolkit_demo.gif b/assets/mih_package_toolkit_demo.gif new file mode 100644 index 0000000..3f6f290 Binary files /dev/null and b/assets/mih_package_toolkit_demo.gif differ diff --git a/example/lib/package_structure/example_package.dart b/example/lib/package_structure/example_package.dart index 970f8ca..3f142d1 100644 --- a/example/lib/package_structure/example_package.dart +++ b/example/lib/package_structure/example_package.dart @@ -13,7 +13,7 @@ class ExamplePackage extends StatefulWidget { class _ExamplePackageState extends State { int selectedbodyIndex = 0; // Important for state management of the body late final ToolBodyOne _toolBodyOne; - late final Widget _toolBodyTwo; + late final ToolBodyTwo _toolBodyTwo; @override void initState() { diff --git a/lib/src/mih_package.dart b/lib/src/mih_package.dart index f854fd4..916b1df 100644 --- a/lib/src/mih_package.dart +++ b/lib/src/mih_package.dart @@ -32,15 +32,15 @@ class MihPackage extends StatefulWidget { /// The floating action button or primary action trigger for this package. final Widget packageActionButton; + /// The titles displayed in the header for each corresponding page. + final List packageToolTitles; + /// The toolbar widget containing icons that correspond to the [packageToolBodies] pages. final MihPackageTools packageTools; /// The list of main content widgets for each "page" of the package. final List packageToolBodies; - /// The titles displayed in the header for each corresponding page. - final List packageToolTitles; - /// An optional drawer for secondary actions. final Drawer? actionDrawer; diff --git a/pubspec.yaml b/pubspec.yaml index b9b4eac..0041246 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,5 +1,5 @@ name: mih_package_toolkit -description: "A comprehensive UI toolkit and utility library for building consistent MIH Packages within the MIH app ecosystem." +description: "A comprehensive UI toolkit and utility library for building consistent MIH Packages within the MIH Project ecosystem." version: 0.0.1 homepage: https://git.mzansi-innovation-hub.co.za/yaso_meth/mih_package_toolkit repository: https://git.mzansi-innovation-hub.co.za/yaso_meth/mih_package_toolkit