A Flutter template project that combines clean architecture principles with method channel communication between Flutter and Kotlin in the Android module. This template is designed to help developers kickstart their projects with a clean and structured architecture while incorporating Kotlin code for specific functionality.
-
Clean Architecture: The project follows clean architecture principles to keep your codebase maintainable and scalable.
-
Method Channel Communication: Utilizes Flutter's method channel for seamless communication with Kotlin in the Android module.
-
Sorting Algorithm: Includes a sorting algorithm implemented in Kotlin for demonstration purposes.
Follow these steps to get started with this template project:
-
Clone the Repository: Clone this repository to your local machine.
git clone https://github.com/xeron56/Flutter_method_channel_clean_architecture.git
-
Flutter Setup: Make sure you have Flutter and Dart installed on your system. If not, you can install them by following the official Flutter installation guide: Flutter Installation Guide
-
Android Studio Setup: Open the project in Android Studio and ensure that you have the Kotlin plugin installed.
-
Running the Project: You can run the Flutter app on your preferred emulator or physical device using the following command:
flutter run
-
Exploring the Code: Explore the project structure and codebase to understand how clean architecture and method channel communication are implemented.
-
Customization: Customize the project according to your requirements. You can replace the sorting algorithm with your own functionality and expand the project as needed.
The project is organized with a clean architecture approach, consisting of the following modules:
- app: The Flutter app module.
- android: The Android module with Kotlin code.
Contributions are welcome! If you have any suggestions, improvements, or bug fixes, feel free to open issues or create pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
- The sorting algorithm used in this template is for demonstration purposes and can be replaced with any other functionality you require.