FLUTTER ECOSYSTEM

MuwaffaqImam/bye-bye-localization

A simple Text Widget, that can translate any text to any language using instant on device translation AI model, all you have to do is to provide the text and the widget will traslate automatically, as a result you don't have to specify and localization files and type translation manually the widget will do it for you.

bye-bye-localization project cover
Stars
6
Forks
3
Last push (UTC)
Dec 14, 2021
Project status
Active
MuwaffaqImam GitHub avatar
GITHUB User

MuwaffaqImam ↗

LanguagesDartHTMLRubySwiftKotlinObjective-C

Packages published by this repository

Dependencies used

Dependency list 3 items
  • flutter{"sdk":"flutter"}
  • google_ml_kit^0.6.0
  • flutter_testDevelopment{"sdk":"flutter"}

Original README

English project snapshot. Visit GitHub for the latest content.

Expand / collapse project README

Bye Bye Localization 👋

Its just a simple Text widget that will provide automatic fast translation for any text. it supports 59 languages.

No more boring Localization configuration files, all you have to do is change your old Text() widget to TranslatedText() and enjoy the sweet sweet life without Localization

PS: the translation will be fast as it uses translation model deployed to the device under the hood.

Demo 📹

Demo

How to use ?

Step 1: All you have to do is call the widget

TranslatedText('your text')

Step2: don't forget to call init the widget using the Manager

 Future<bool> initWidget() async {
   return await TranslationManager().init(
     originLanguage: Languages.ENGLISH,
     translateToLanguage: Languages.ARABIC,
   );
 } 

Step 3: Buy me Coffee 🙂! ☕️

Buy Me a Coffee

coffee

Quick example ⚡️

Widget buildWidget(){
    return FutureBuilder(
      future: initTranslation(),
      builder: (context, snapshot) {
        if (snapshot.hasError) {
          return Text('${snapshot.error}');
        }
        if (snapshot.connectionState == ConnectionState.done) {
          return TranslatedText('I am a text that will be translated always');
        }
        return CircularProgressIndicator();
      },
    );
  }
  Future<bool> initWidget() async {
    return await TranslationManager().init(
      originLanguage: Languages.ENGLISH,
      /// Change here the language to change the translation, and re run.
      /// For example Languages.RUSSIAN.
      translateToLanguage: Languages.ARABIC,
    );
  }

Live Demo 🔆

below you will find a link to APK contains live demo

Download APK

Author ✍️

Muwaffaq Imam

  • Edu email : m.imam@innopolis.university
  • Telegram : moofiy