openfrontio / openfrontio/OpenFrontIO

[FEATURE] Translation completion percentage

Open
#4,236 5 comments 0 reactions 1 assignee Claimed by @Katokoda View on GitHub
approved Stale
Dominant language
TypeScript
Stars
2.7k
Forks
1.4k
Avg merge
17h 43m
Merged PRs (30d)
310

Description

**Goal of the changes**
I want to improve the LanguageModal - where one see all languages and choose one.
My ideas would:
A. Let players easily know if their chosen language is **completely or partially translated** and how much --> avoids bad feeling / incomprehension when in game and noticing 80% of the strings are still in English.
B. **Give visibility to fully translated languages**, incentivizing players to help with the translations of their language. (I have seen people asking in play-testing live-chat "does \ need help?")
C. As a side-effect, **fix current visual misbehavior of long names** (looking at you Schweizerdeutsch)
D. Add **a clear indication that translation are community-based** and that people can help.

--> Design choices were made accordingly to [a poll in the translation discord server](https://discord.com/channels/1359544954044551290/1359544954803847210/1512464108635820152).

**Concrete changes**
1. Let the number of columns be chosen dynamically
2. Adds a discreet completion percentage at the bottom-right of each language (except for the source language English).
3. Make that percentage stand out when 100%.
4. Add a message at the bottom of the language-selection window, asking for translation help. Something like "Community-based translations. Help your language reach 100% of translation by joining our discord server(\)"

**My current mock-up**
Image

**Under the hood**
My current mock-up sets up a fixed translation-completion-percentage just for testing.
The implementation idea would be to store the total number of translated strings for each language in their section within `resources/lang/metadata.json` (as an optional parameter). Then, the percentage can be computed easily by comparing it with English.
I have talked with Aotumori about that and he will change the metadata generator accordingly.

**Things I need an opinion about**
1. Are the size, color, positioning and highlight coherent?
2. Am I allowed to make the name of poorly-translated languages less visible (grey-out to be in between the current name and the English translation) if the translation percentage is below a certain threshold (like 50%)?
3. If yes: which threshold?
4. Similarly, should I let the current highlight-for-100% stay also for 99%-95% translation completion?

**Additional information**
Please **assign me to this issue**.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.