All Projects → KingWu → lang_table

KingWu / lang_table

Licence: BSD-2-Clause license
lang_table is a dart plugin to generate string files from a source. Use a table to manage all multi-language resources. Inspired by fetch-mobile-localization-from-airtable

Programming Languages

dart
5743 projects
ruby
36898 projects - #4 most used programming language
swift
15916 projects
kotlin
9241 projects
objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to lang table

gen lang
gen_lang is a dart library for internationalization. Extracts messages to generate dart files required by Intl, inspired by Intl_translation and Flutter i18n
Stars: ✭ 94 (+452.94%)
Mutual labels:  dart-library, flutter-plugin, flutter-plugins, flutter-package
flutter sliding tutorial
User onboarding library with smooth animation of objects and background colors
Stars: ✭ 127 (+647.06%)
Mutual labels:  dart-library, flutter-plugin, flutter-package
flutter ume
UME is an in-app debug kits platform for Flutter. Produced by Flutter Infra team of ByteDance
Stars: ✭ 1,792 (+10441.18%)
Mutual labels:  dart-library, flutter-plugin, flutter-package
Motion-Tab-Bar
A beautiful animated flutter widget package library. The tab bar will attempt to use your current theme out of the box, however you may want to theme it.
Stars: ✭ 237 (+1294.12%)
Mutual labels:  dart-library, flutter-plugin, flutter-package
barcode.flutter
barcode generate library for Flutter
Stars: ✭ 58 (+241.18%)
Mutual labels:  dart-library, flutter-plugin, flutter-package
flutter-crisp
Flutter plugin for Crisp Chat
Stars: ✭ 18 (+5.88%)
Mutual labels:  flutter-plugin, flutter-plugins
reactive state
An easy to understand reactive state management solution for Flutter.
Stars: ✭ 19 (+11.76%)
Mutual labels:  flutter-plugin, flutter-package
flutter-devicelocale
A Flutter package to read and return the set device locales
Stars: ✭ 45 (+164.71%)
Mutual labels:  flutter-plugin, flutter-package
davinci
A flutter package to convert any widget to an Image.
Stars: ✭ 33 (+94.12%)
Mutual labels:  flutter-plugin, flutter-package
link text
Easy to use text widget for Flutter apps, which converts inlined urls into working, clickable links
Stars: ✭ 20 (+17.65%)
Mutual labels:  flutter-plugin, flutter-package
liquid button
Liquify your buttons, web demo at website
Stars: ✭ 18 (+5.88%)
Mutual labels:  flutter-plugin, flutter-package
nepali date picker
Material Style Date Picker with Bikram Sambat(Nepali) Calendar Support. Supports both Android and ios.
Stars: ✭ 30 (+76.47%)
Mutual labels:  flutter-plugin, flutter-package
wasm.dart
WebAssembly virtual machine for Dart [work in progress]
Stars: ✭ 43 (+152.94%)
Mutual labels:  dart-library, flutter-package
flutter google maps
A Flutter plugin for integrating Google Maps in iOS, Android and Web applications. It is a wrapper of google_maps_flutter for Mobile and google_maps for Web.
Stars: ✭ 86 (+405.88%)
Mutual labels:  flutter-plugin, flutter-package
open route service
An encapsulation made around openrouteservice API for Dart and Flutter projects. Made for easy generation of Routes and Directions on Maps, Isochrones, Time-Distance Matrix, Pelias Geocoding, POIs, Elevation and routing Optimizations using their amazing API.
Stars: ✭ 20 (+17.65%)
Mutual labels:  dart-library, flutter-package
FlutterLoadingGIFs
Loading indicator GIFs. Material and Cupertino (Android and iOS) loading indicators in assorted sizes. Use as placeholders for loading remote image assets. Demo: https://gallery.codelessly.com/flutterwebsites/loadinggifs/
Stars: ✭ 28 (+64.71%)
Mutual labels:  flutter-plugin, flutter-package
Flogs
An Advanced Logging Framework develop in flutter that provides quick & simple logging solution.
Stars: ✭ 158 (+829.41%)
Mutual labels:  dart-library, flutter-package
swipedetector
A Flutter package to detect up, down, left, right swipes.
Stars: ✭ 34 (+100%)
Mutual labels:  flutter-plugin, flutter-package
getx snippets extension
An extension to accelerate the process of developing applications with flutter, aimed at everyone using the GetX package.
Stars: ✭ 142 (+735.29%)
Mutual labels:  flutter-plugin, flutter-package
flutter flavorizr
A flutter utility to easily create flavors in your flutter application
Stars: ✭ 260 (+1429.41%)
Mutual labels:  flutter-plugin, flutter-plugins

lang_table

lang_table is a dart plugin to generate string files from a source. Use a table to manage all multi-language resources. Inspired by fetch-mobile-localization-from-airtable

Installation

Add this library into pubspec.yaml

dev_dependencies: 
    lang_table: 0.2.0

Usage

Run the following command at root directory.Then will generate several output files based on the source platform

pub run lang_table:generate

A below table shown all supported arguments:

Argument Description
--platform (Required) The platform stores all localization strings. Suppoted platforms: airTable
--input (Required) The source of the strings
--target (Required) Code generator for a target plaformat. Supported target: Flutter
--output-dir (Optional) An output folder stores all generated json files (defaults to "res/string")
--api-key (Optional) Usage of platform specific

Example

Key [code=key] English [code=en] Traditional Chinese [code=zh_TW] Japanese [code=ja]
locale English 中文 日文
simpleMessage This is a simple Message 這是簡單消息 これは簡単なメッセージです
messageWithParams Hi ${yourName}, Welcome you! 你好 ${yourName},歡迎你。 こんにちは${yourName}、ようこそ。
group.hello Welcome you! 歡迎你。 ようこそ。

Example Template on AirTable

Running the following command,

pub run lang_table:generate --platform=airTable --input=https://api.airtable.com/v0/appZmh0WMg3y6APAg/example --api-key={YOUR API KEY} --target=Flutter

Generated files like this,

|--- lib 
|--- res 
    |--- string 
         |--- string_en.json 
         |--- string_zh_TW.json 
         |--- string_ja.json 

Meta Code

It is required to insert into table headers for identifying the usage of a table's column.

Type of Meta Code

[code=key] Used to identify the column storing a key for a message
[code={Locale}] Used to identify the column storing a message for a specific language

Grouping Key

For the key in [code=key], lang_table support group key. Using '.' to separate different groups

eg.

{
    "group.hello": "Welcome you!" 
}

Supported Platforms

AirTable

Example

pub run lang_table:generate --platform=airTable --input=https://api.airtable.com/v0/appZmh0WMg3y6APAg/example --api-key={YOUR API KEY} --target=Flutter

Powered By

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].