Welcome to the FlutterFlow and HMS Room Kit App Starter project! This Flutter template provides a solid foundation for building feature-rich mobile applications by combining the power of FlutterFlow for UI design and HMS Room Kit for real-time communication capabilities.
-
FlutterFlow Integration: Leverage FlutterFlow's intuitive visual development platform to design stunning user interfaces for your Flutter app effortlessly.
-
HMS Room Kit: Integrate 100ms HMS Room Kit for seamless real-time communication features such as instant messaging, audio, and video calls into your Flutter application.
Follow these steps to set up and run the project locally:
-
Clone this repository:
git clone https://github.com/Decoder07/flutterflow_roomkit.git
-
Navigate to the project directory:
cd flutterflow_roomkit
-
Install the required dependencies:
flutter pub get
-
Run the app:
flutter run
For detailed information on how to use FlutterFlow and integrate HMS Room Kit features, check out the documentation:
hms_room_kit
manages state and UI out of the box, but there are some conflicts with flutterflow. So, we need to make some changes in the app layer. Please follow the steps below to run the app:
- Solving dependency conflicts:
There are several packages which are common in both flutterflow
and hms_room_kit
, but with different versions. So, we need to make sure that the versions of these packages are same in both pubspec.yaml
files. For conflict in packages you will get error like this:
Error: Failed running flutter pub get...
Because custom_widget depends on flutter_cache_manager 3.3.0 which depends on http ^0.13.0, http ^0.13.0 is required.
So, because custom_widget depends on http ^1.0.0, version solving failed.
You can try the following suggestion to make the pubspec resolve:
* Try upgrading your constraint on flutter_cache_manager: flutter pub add flutter_cache_manager:^3.3.1
This can be solved by updating to the higher version of the package. For example, in the above error, we need to update flutter_cache_manager
to ^3.3.1
in pubspec.yaml
file.
🔑 Note: Flutterflow UI doesn't directly allow changing the package version, either you need to do it in
Custom Widgets
section or you can download the code from flutterflow and change the version inpubspec.yaml
file locally. We recommend doing the later since it's much easier.
- Issues with Navigator:
Flutterflow uses go_router
whereas hms_room_kit
uses MaterialPageRoute
for navigation. So, you might face issues while navigating from app screen to hms_room_kit
screen. To solve this, you will need to use MaterialPageRoute
while pushing the hms_room_kit
path while you can continue using go_router
for other paths.
That's it. You can now use the amazing Prebuilt UI with speed of flutterflow in your application.
If you face any issues or have any questions, please reach out to us on Discord