TempoLife › Features › Help translate TempoLife › fi
Finnish — Suomi
5 320 of 5 321 TempoLife strings are translated into Finnish (100.0%). Browse the string list, see the English source next to the current text, and suggest a better one.
Shipping. The health and food vocabulary is where most of the remaining awkwardness is.
The string list
Every row is one string in the app. The English column is the source; the Finnish column is what ships today, or missing when nothing does. Open a row to see it in the other languages and to suggest a change.
All strings Missing only
| Key | English | Finnish |
|---|---|---|
app.bmi_overweight | Overweight | Ylipaino |
app.bmi_underweight | Underweight | Alipaino |
app.brand_names_label | Brand name(s): | Kauppanimi(t): |
app.brands | Brands | Tuotemerkit |
app.browser_no_notif | ⚠️ Browser does not support notifications | ⚠️ Selain ei tue ilmoituksia |
app.bulk_marked | {n} doses marked | {n} annosta merkitty |
app.bulk_marked.one | 1 dose marked | 1 annos merkitty |
app.bulk_marked.other | {n} doses marked | {n} annosta merkitty |
app.bulk_take_all | All | Kaikki |
app.cam_active | 🔍 Camera active — hold barcode in view | 🔍 Kamera aktiivinen — pidä viivakoodi näkyvissä |
app.cam_denied | 🚫 Camera permission denied | 🚫 Kameran käyttö evätty |
app.cam_unavailable | 📷 Camera not available | 📷 Kamera ei saatavilla |
app.cam_use_sim | ⚠️ Camera not available — use simulator | ⚠️ Kamera ei saatavilla — käytä simulaattoria |
app.camera_denied_settings | 🚫 Allow camera from browser settings | 🚫 Salli kamera selaimen asetuksista |
app.camera_permission_needed | Camera permission needed. Please allow and try again. | Kameran käyttölupa tarvitaan. Salli ja yritä uudelleen. |
app.cancel | Cancel | Peruuta |
app.click_more_info | ▼ click for more info | ▼ napauta saadaksesi lisätietoja |
app.close | Close | Sulje |
app.compare_prices | 🏪 Compare prices → | 🏪 Vertaile hintoja → |
app.conflict_badge | ⚠ CONFLICT | ⚠ YHTEISVAIKUTUS |
app.connecting | Connecting... | Yhdistetään... |
app.connection_error | ⚠️ Connection error | ⚠️ Yhteysvirhe |
app.critical_group | 🔴 Critical | 🔴 Kriittinen |
app.critical_label | Critical | Kriittinen |
app.csrf_expired | Your session expired. Please reload the page and try again. | Istuntosi vanheni. Lataa sivu uudelleen ja yritä uudestaan. |
app.day_streak | Day streak | Päiväputki |
app.days_streak | days streak | päivän putki |
app.days_unit | days | päivää |
app.delete | Delete | Poista |
app.delete_activity | Delete this activity? | Poista tämä aktiviteetti? |
app.delete_btn | Delete | Poista |
app.delete_drug | Delete drug | Poista lääke |
app.delete_entry | Delete entry? | Poista merkintä? |
app.delete_sleep | Delete this sleep entry? | Poista tämä unimerkintä? |
app.delete_steps | Delete this step entry? | Poista tämä askelmerkintä? |
app.delete_weight | Delete this weight entry? | Poista tämä painomerkintä? |
app.deleted | 🗑️ Deleted | 🗑️ Poistettu |
app.description_label | DESCRIPTION | KUVAUS |
app.discount_label | 🏥 Discount | 🏥 Alennus |
app.doctor_notified | 📞 Doctor notified! | 📞 Lääkärille ilmoitettu! |
app.doctor_notified_body | Doctor received interaction notification. | Lääkäri sai yhteisvaikutusilmoituksen. |
app.dosage_info | 💊 Dosage: | 💊 Annostus: |
app.dosage_label | DOSAGE | ANNOSTUS |
app.dose | Dose | Annos |
app.dose_marked | Dose marked | Annos merkitty |
app.dose_missed_title | Missed | Missattu |
app.dose_placeholder | e.g. 500mg | esim. 500 mg |
app.dose_reminder | You will get reminders at 07:00 and 20:00 if a dose is not taken. | Saat muistutukset klo 7.00 ja 20.00, jos annosta ei ole otettu. |
app.dose_taken | Taken | Otettu |
app.dr_prefix | Dr: | Lääk.: |
app.drug_added | added! | lisätty! |
app.drug_already_added | A medication with the same name is already added | Samanniminen lääke on jo lisätty |
app.drug_dose_too_long | Dose description is too long (max 100 characters) | Annoskuvaus on liian pitkä (max 100 merkkiä) |
app.drug_expiry_invalid | Invalid expiry date | Virheellinen vanhenemispäivä |
app.drug_expiry_too_far | Expiry date too far in the future (> 20 years) | Vanhenemispäivä liian kaukana tulevaisuudessa (> 20 vuotta) |
app.drug_expiry_too_old | Expiry date too far in the past (> 1 year ago) | Vanhenemispäivä liian kaukana menneisyydessä (> 1 vuosi sitten) |
app.drug_found_toast | 📦 Found: %name% | 📦 Löytyi: %name% |
app.drug_frequency_invalid | Invalid frequency | Virheellinen tiheys |
app.drug_id_required | Medication ID is required | Lääkkeen tunnus on pakollinen |
app.drug_name_required | Medication name is required | Lääkkeen nimi on pakollinen |
← Previous Page 16 of 89 Next →
What makes a good Finnish string here
Keep the placeholders. Anything in curly braces is replaced with a real value before the string is shown. Drop {n} and the sentence loses its number; rename it and the replacement silently fails. They can move within the sentence, but they must all still be there and spelled exactly as in the English.
Watch the length. Most of these strings live in a fixed space: a tab label, a button, a stat tile under a big number. A translation half again as long as the English will be clipped or will push a layout apart on a small phone. When the natural translation is much longer, a shorter and slightly blunter phrasing is the right answer.
Use the app's own vocabulary consistently. The same concept should read the same way everywhere — one word for a logged meal, one for a fast, one for a streak. Consistency matters more than variety; a synonym used once reads as a different feature.
Do not translate health claims into advice. Several strings deliberately describe a number without telling anyone what to do about it. A translation that turns "your resting rate is above your baseline" into "see a doctor" changes what the app claims, which is not a translation decision.
How this list is built
The list is parsed from the app's own translation files at the moment you load the page, so it cannot drift from what ships. Strings the parser could not read in a single pass are left out entirely — 37 lines in the Finnish files fell into that category — rather than being shown with a guessed value.
Source: TempoLife app translation files (assets/js/i18n*.js), parsed at page render · checked 2026-09-02