If you are interested to be part of the Daily Dozen App Translation Volunteer Team, an online application is available at:
Dashboard • Localization Workflow • Filename Convention • Resources
The nutritionfactsorg/daily-dozen-localization repository supports the language translation work for the Daily Dozen applications on Android and Apple devices.
A Daily Dozen App Localization QuickStart Guide is located in the documentation folder at Documentation/Quickstart.md. The guide is intended to provide a process that is approachable by contributors without software development expertise. For example, it is sufficient to download, edit and submit a single file without creating a local clone or online fork of the git repository.
Dashboard ▴
Base Development Language
| Language | Android | Google Play | Apple | App Binary | App Store |
|---|---|---|---|---|---|
| English_US | ✓ | en | ✓ | Base, en |
Australia AU) Canada (CA) Great Britain (GB) USA (US) |
App Localizations & Store Distribution
Legend:
P- partial application translation receivedR- application translation received and being processedT- application in test with translationU- application existing translation update received and being processed✓- published through the app store
Notes:
† - The App Store column provides a links to example localized webpages. Every Daily Dozen application contains all published translations so that the user can have access to any of the in-app translations anywhere in the world. The Daily Dozen application is either (1) based on the user's language setting for the device or (2) uses English if a dialect for the device language is not available. For Apple iOS version 13 or newer, the user can set the language on a per application basis in the iOS Settings app.
Localization Workflow ▴
Here is an overview of the general workflow for working with the TSV spreadsheet files. Please see the Daily Dozen App Localization QuickStart Guide for more detailed steps: Documentation/Quickstart.md.
Phase 1. Export. The Android and Apple exported localization files are merged into a spreadsheet compatible Tab Separated Value (TSV) files.
Phase 2. Translation. The Tab Separated Value (TSV) format can be conveniently imported and exported with various popular spreadsheet programs for the translators' use.
Data in field columns with have header names which begin with key_ or base_ are not to be translated. In particular, the key_android, key_apple entries are used for mapping values back into the device specific localization files.
The base_comment provides translation guidance in the development language (English).
The columns which begin with lang_ are to be translated.
Extra columns can be added for the translators' convenience. The extra column names should not begin with key_, base_ or lang_. Any extra columns will be ignored upon import back into the device specific formats.
Phase 3. Import. The completed TSV files are used to generate Android and Apple localization import files.
Filename Convention ▴
The filename convention language_code.type.tags.datestamp.extension uses the following elements :
languageLanguage Name. For example:English,Spanish,German.codeLanguage Code is a ISO 639 Set 1 two letter language code. The code may also include the hyphenated-addition of a region code.- Language code examples:
en,es - Language code examples which include a regtion:
pt-BR,pt-PT.
- Language code examples:
typeTypes currently in use include:appTranslation used directly in the Android and Apple applications.storeTranslation used in the App Store web page.url_fragmentsUrl path fragments used in the applications. May be language dependent, but not "translated" per se.url_topicsUrls for topic video url links. May be language dependent, but not "translated" per se.
tags: Tags provide additional descriptors, as needed, in the file name. For example:changeset: an incremental change to the overall translationsintake: raw TSV file provided from a translatornormalized: rawintakeTSV file which has been processed, passed automated checks and normalizedwip: some arbitrary "Work In Progress"
datestamp: Date, and optionally time, based on either of the following formats.yyyyMMdd:20200413(year, month, day)yyyyMMdd_HHmm:20200413_1327(year, month, day, 0-24 hours, minutes)
.extensionFiletype Extension may be.tsv,.text,.txtor.zipdepending on the content format..text,.txtor.zipcan be posted in an issue tracker comment..tsvis use in the processing code base and pull requests
File Name Examples
English_US_en.app.tsvThe baseline US English spreadsheet for the Android and Apple applications.Russian_ru.app.changeset01.20220805.intake.tsvUnprocessed Russian changeset version 01 received from the translator on August 5, 2022.
Resources ▴
- Android Developer
- Apple App Store regions: https://www.apple.com/choose-country-region/
- Apple Developer
- Article: "Localizing Your App" ⇗
- App Store
- Localize App Store information ⇗ List of localizations supported in App Store. The following can be localized on the App Store page: app name, description, keywords, and screenshots.
- App Store countries and regions ⇗ List of countries and regions where the app can be made available.
- Required, localizable, and editable properties ⇗
- Localization ⇗
- App Store Reference: App information fields
- See "Availability in China mainland" regarding China permits.
- Standard Codes
- Language ISO 639-1 codes ⇗ Codes for the representation of names of languages
- ISO 3166 ⇗ geographic codes
- ISO 3166-1 alpha-2 ⇗ two-letter country codes