language_translator 0.0.6+1 copy "language_translator: ^0.0.6+1" to clipboard
language_translator: ^0.0.6+1 copied to clipboard

A lightweight Flutter package for easy multilingual support, providing string translation with or without context, RTL support, and a custom widget for translated text display.

example/main.dart

import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:get_it/get_it.dart';
import 'package:language_translator/language_translator.dart';

final sl = GetIt.instance;

void main() {
  // Optional: Initialize language configuration with custom defaults
  initializeLanguageConfig(
    defaultLanguageCode: 'bn',
    supportedLocales: [Locale('en'), Locale('bn')],
  );

  // Register DI and BLoCs
  languageSettingGetItRegister();

  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MultiBlocProvider(
      providers: languageSettingBlocProviders,
      child: AppLanguageBuilder(
        child: MaterialApp(
          debugShowCheckedModeBanner: false,
          locale: AppLanguage.defaultLanguage,
          supportedLocales: AppLanguage.supportedLanguages,
          localizationsDelegates: const [
            Translate.delegate,
            ...GlobalMaterialLocalizations.delegates,
            GlobalWidgetsLocalizations.delegate,
            GlobalCupertinoLocalizations.delegate,
          ],
          home: const HomePage(),
        ),
      ),
    );
  }
}

class HomePage extends StatelessWidget {
  const HomePage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('app_title'.translateTxt(context))),
      body: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: const [
          Center(
            child: AppTranslatedTextView(
              txt: 'hello_key',
              style: TextStyle(fontSize: 24),
            ),
          ),
          SizedBox(height: 16),
          ToggleLanguageButton(first: Locale('en'), second: Locale('bn')),
        ],
      ),
    );
  }
}
0
likes
150
points
598
downloads

Publisher

unverified uploader

Weekly Downloads

A lightweight Flutter package for easy multilingual support, providing string translation with or without context, RTL support, and a custom widget for translated text display.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

country_code_picker, dart_data_type_parser, flutter, flutter_bloc, flutter_localization, get_it_di_global_variable, hydrated_bloc, navigation_without_context, path_provider, provider

More

Packages that depend on language_translator