Google's ML Kit for Flutter

Pub Version analysis Star on Github License: MIT

Google's ML Kit for Flutter is a set of Flutter plugins that enable Flutter apps to use Google's standalone ML Kit.

In versions 0.7.3 and earlier all features were included in a single plugin, but a lot of developers started to get issues with the size of their apps, because even though they only needed a single feature, the plugin included all the resources for the rest of the features, that increased the size of the app significantly.

Since version 0.8.0 we have split the plugin in multiple plugins to allow developers to use only what they need. google_ml_kit now is an umbrella plugin including all of the plugins. Start using or migrate to the new plugins to use only what you need. Go to each plugin to read about their requirements. If you find issues report and contribute with your pull requests.


Vision APIs

FeaturePluginSource CodeAndroidiOS
Barcode Scanninggoogle_mlkit_barcode_scanning Pub VersionGitHub
Face Detectiongoogle_mlkit_face_detection Pub VersionGitHub
Image Labelinggoogle_mlkit_image_labeling Pub VersionGitHub
Object Detection and Trackinggoogle_mlkit_object_detection Pub VersionGitHub
Text Recognitiongoogle_mlkit_text_recognition Pub VersionGitHub
Text Recognition V2google_mlkit_text_recognition Pub VersionGitHub
Digital Ink Recognitiongoogle_mlkit_digital_ink_recognition Pub VersionGitHub
Pose Detectiongoogle_mlkit_pose_detection Pub VersionGitHub
Selfie Segmentationgoogle_mlkit_selfie_segmentation Pub VersionGitHub

Natural Language APIs

FeaturePluginSource CodeAndroidiOS
Language Identificationgoogle_mlkit_language_id Pub VersionGitHub
On-Device Translationgoogle_mlkit_translation Pub VersionGitHub
Smart Replygoogle_mlkit_smart_reply Pub VersionGitHub
Entity Extractiongoogle_mlkit_entity_extraction Pub VersionGitHub

Getting Started

Before you get started read about the requirements and known issues of this plugin here.

Go to the documentation of each plugin to learn how to use it.

Example app

Find the example app here.


Contributions are welcome. In case of any problems look at existing issues, if you cannot find anything related to your problem then open an issue. Create an issue before opening a pull request for non trivial fixes. In case of trivial fixes open a pull request directly.