TempoLife

TempoLifeFeaturesHelp translate TempoLife

Help translate TempoLife

5 174 English strings power the TempoLife app. Estonian, Finnish and Russian already ship; Latvian, Lithuanian, Swedish, German, Polish and Spanish have not been started. Coverage below is counted from the app's own files.

5 174source strings
4shipping languages
6languages open

Coverage

Every percentage below is counted, not claimed: the app's translation files are read and each English key is checked for a non-empty value in that language. A language with no file is shown at zero rather than being left out.

Counted from assets/js/i18n*.js at page render. "Strings with suggestions" counts distinct keys with at least one open community suggestion.
LanguageTranslatedStringsStateStrings with suggestions
Estonian Eesti 100.0%5 172 / 5 174shipping0
Finnish Suomi 100.0%5 173 / 5 174shipping0
Russian Русский 100.0%5 172 / 5 174shipping0
Latvian Latviešu 0.0%0 / 5 174not started0
Lithuanian Lietuvių 0.0%0 / 5 174not started0
Swedish Svenska 0.0%0 / 5 174not started0
German Deutsch 0.0%0 / 5 174not started0
Polish Polski 0.0%0 / 5 174not started0
Spanish Español 0.0%0 / 5 174not started0

How the count is made, and where it is weak

The parser reads one-line entries of the form 'key': 'value' and skips anything else — a value spread over two lines, a value built by joining strings, a template literal. That is a deliberate limit: a tolerant parser that guessed at those would produce a coverage figure nobody could check.

In the English source it skipped 37 lines that looked like entries but were not readable in one pass. Those strings are absent from this portal entirely — they are not counted as translated and not counted as missing, because the portal does not know what they say. If a string you want to fix is not listed, that is the most likely reason.

The second weakness is that a key with a value is treated as translated. A string that was machine-translated badly, or that still holds the English text, counts the same as a good translation. Coverage measures presence, not quality — which is exactly why the suggestion queue exists for languages already at 100%.

Which language to work on

Estonian · Eesti

Shipping since the beginning. Suggestions here are corrections and better wording rather than gaps.

100.0% · 5 172 strings

Finnish · Suomi

Shipping. The health and food vocabulary is where most of the remaining awkwardness is.

100.0% · 5 173 strings

Russian · Русский

Shipping. Long strings are the usual problem: Russian runs longer than English and breaks tight buttons.

100.0% · 5 172 strings

Latvian · Latviešu

Not started. Nothing is translated yet, so every string here is an open one.

0.0% · 0 strings

Lithuanian · Lietuvių

Not started. Nothing is translated yet, so every string here is an open one.

0.0% · 0 strings

Swedish · Svenska

Not started. Nothing is translated yet, so every string here is an open one.

0.0% · 0 strings

German · Deutsch

Not started. German compounds are long, so button and tab strings need particular care.

0.0% · 0 strings

Polish · Polski

Not started. Plural forms are more complex than in English and the app currently assumes two.

0.0% · 0 strings

Spanish · Español

Not started. The largest audience on this list, and the one with the most regional variation to decide on.

0.0% · 0 strings

How suggestions are handled

Nothing here is applied automatically. A suggestion is stored, shown on its string's page and voted on. It reaches the app only when a person reviews it and puts it into the translation file, in a release. There is no path from this form to a live string, by design: an app whose text could be edited by anyone who could POST a form would be an app whose text could say anything.

Votes rank the queue for whoever is reviewing. One account, one vote per suggestion, enforced by the database. A high-voted suggestion is a strong hint and not an approval.

Good suggestions keep the placeholders exactly as they appear in the source — {n}, {steps} and the like are replaced with real numbers at runtime, and a translation that drops one produces a sentence with a hole in it. They also respect length: a string that lives on a button has about as much room as the English does, and a translation twice as long will be clipped on a phone.

Frequently asked questions

Do I need to be a professional translator?

No. Native fluency and a bit of care with the placeholders is what matters. Awkward but correct beats polished but wrong, and a reviewer sees every suggestion before it ships.

Will my translation appear in the app immediately?

No. Suggestions are reviewed and applied by hand in a release. Nothing on this site can change what the app says.

Why are Estonian, Finnish and Russian listed if they are already done?

Because coverage counts presence, not quality. Those three are complete and still have clumsy strings in them, and a native speaker spotting one is more useful than another empty language.

What happens to a rejected suggestion?

It stops being shown. Rejection usually means a placeholder was dropped, the string did not fit, or another suggestion said the same thing better.

Source: TempoLife app translation files (assets/js/i18n*.js), parsed at page render · checked 2026-09-02

Translating is easier if you use the app

Most strings only make sense in context. A free account lets you see where each one appears.

Create a free accountGet the app