Updating conversion, creating readmes

This commit is contained in:
Jonas Zeunert
2024-04-19 23:37:46 +02:00
parent 3619ac710a
commit 08e75b0f0a
635 changed files with 30878 additions and 37344 deletions

View File

@@ -1,6 +1,6 @@
!awesome-i18n (./awesome_i18n.png)
 awesome-i18n !Awesome (https://awesome.re/badge.svg) (https://awesome.re)
 awesome-i18n !Awesome (https://awesome.re/badge.svg) (https://awesome.re)
▐ A curated list of i18n tools, i18n libraries, localization software, localization programs and translation management systems.
@@ -84,12 +84,10 @@
- react-persian (https://github.com/evandhq/react-persian) - set of react components for Persian localization
- react-translated (https://github.com/amsul/react-translated) - dead simple way to add complex translations
- react-localize-redux (https://github.com/ryandrewjohnson/react-localize-redux) - localization library for handling translations
- react-translate-component (https://github.com/martinandert/react-translate-component) - component for React that utilizes the Counterpart module and the Interpolate component to provide multi-lingual/localized
text content
- react-littera (https://github.com/DRFR0ST/react-littera) - lightweight library for robust translations using hooks. Some of the key features are dynamic templates, missing reports, auto-locale detection and 
more
- talkr (https://github.com/DoneDeal0/Talkr) - lightest i18n provider for React applications (< 1kb). Supports Typescript, provides smart autocompletion based on your own json translation files, handles complex 
plural rules, 0 dependencies.
- react-translate-component (https://github.com/martinandert/react-translate-component) - component for React that utilizes the Counterpart module and the Interpolate component to provide multi-lingual/localized text content
- react-littera (https://github.com/DRFR0ST/react-littera) - lightweight library for robust translations using hooks. Some of the key features are dynamic templates, missing reports, auto-locale detection and more
- talkr (https://github.com/DoneDeal0/Talkr) - lightest i18n provider for React applications (< 1kb). Supports Typescript, provides smart autocompletion based on your own json translation files, handles complex plural rules, 0 
dependencies.
VueJS
@@ -175,25 +173,24 @@
📚 Resources
- Stackoverflow: Localization vs Internationalization (https://stackoverflow.com/questions/506743/localization-and-internationalization-whats-the-difference) - Localization and internationalization, what's the 
difference?
- Stackoverflow: Localization vs Internationalization (https://stackoverflow.com/questions/506743/localization-and-internationalization-whats-the-difference) - Localization and internationalization, what's the difference?
- Stackoverflow: Daylight saving time and time-zone best practices (http://stackoverflow.com/questions/2532729/daylight-saving-time-and-time-zone-best-practices)
- Blog post: Top 12 libraries for React localization (https://dev.to/jpomykala/top-12-libraries-for-nextjs-react-apps-and-react-native-apps-for-i18n-and-react-localization-5fi8) - Blog post on dev.to about top 
12 libraries for react localization
- Blog post: Top 12 libraries for React localization (https://dev.to/jpomykala/top-12-libraries-for-nextjs-react-apps-and-react-native-apps-for-i18n-and-react-localization-5fi8) - Blog post on dev.to about top 12 libraries for react 
localization
- Blog post: Building a minimal i18n library (https://janmonschke.com/building-a-minimal-i18n-library)
- Blog post: Generating images with multi-language texts (https://bannerly.io/blog/posts/multi-language-image-variants/) - article about images localization and i18n in blog post banners
- Blog post: Language vs Locale (https://simplelocalize.io/blog/posts/language-vs-locale/) - what is the difference between language and locale
- Blog post: Development/Production parity for Rails i18n (https://withatwist.dev/the-12-factor-app-dev-and-prod-parity.html) - blog post with a warning on using different i18n backends in development/production
- Blog post: What is 'hreflang' attribute (https://simplelocalize.io/blog/posts/what-is-hreflang/) - hreflang FAQ and explanation how to use it and why it is important for SEO
- Blog post: i18n with React Intl and SimpleLocalize (https://dujushi.github.io/2021/04/14/i18n-with-react-intl-and-simple-localize.html) - article demonstrates how to set up and manage translations with 
autogenerated translation keys with FormatJS
- Blog post: i18n with React Intl and SimpleLocalize (https://dujushi.github.io/2021/04/14/i18n-with-react-intl-and-simple-localize.html) - article demonstrates how to set up and manage translations with autogenerated translation keys 
with FormatJS
- Github: FormatJS example project (https://github.com/simplelocalize/simplelocalize-react-intl) - example project built with React-intl and React
- Github: i18next example project (https://github.com/simplelocalize/simplelocalize-i18next) - example project built with i18next and React
- Guide: Google Developers - Internationalization (https://developers.google.com/international/) - official Google document page
- Guide: Angular i18n (https://angular.io/guide/i18n) - official Angular i18n document page
- Guide: W3C i18n standards (http://www.w3.org/standards/webdesign/i18n)
- Guide: Common Language Data Repository (http://cldr.unicode.org/) - the Unicode CLDR provides key building blocks for software to support the world's languages, with the largest and most extensive standard 
repository of locale data available
- Guide: Common Language Data Repository (http://cldr.unicode.org/) - the Unicode CLDR provides key building blocks for software to support the world's languages, with the largest and most extensive standard repository of locale data 
available
- ICU: International Components for Unicode (http://site.icu-project.org/) - ICU is a mature and widely used providing Unicode and Globalization support for software applications
- Extract messages and translation keys from project files (https://simplelocalize.io/docs/cli/i18n-keys-extraction/) - extracting translation keys from project files. JavaScript, Android, iOS/macOS
@@ -201,13 +198,12 @@
💭 Community tips & tricks
- If you have tight layouts, my rough rule of thumb is to double the English text and make sure it fits. Then you will usually have enough space for translations.
- Russian and German tend to have the longest translations, and the longest words. Get familiar with the shy-hyphen &shy; character. You put it in the word's html and it will only break the word/show the hyphen 
when necessary. Google “online hyphenation tool” so you know the appropriate places to break the word.
- Russian and German tend to have the longest translations, and the longest words. Get familiar with the shy-hyphen &shy; character. You put it in the word's html and it will only break the word/show the hyphen when necessary. Google 
“online hyphenation tool” so you know the appropriate places to break the word.
- You need to translate numbers with decimals and commas because they are reversed in some languages (period appears as a comma, comma as a period).
- Same goes for percent signs. Sometimes the % shows before the number, and not after. There might be a space between the number and %. It might show as %-KAL in Hungarian.
- Greek question marks look like a semicolon.
- Always keep datetimes in database in UTC. Always return datatimes from backend in UTC. Adjust datetimes on UI layer using timezone information from user or web browser. Accept datetimes in backend with any 
timezone.
- Always keep datetimes in database in UTC. Always return datatimes from backend in UTC. Adjust datetimes on UI layer using timezone information from user or web browser. Accept datetimes in backend with any timezone.
🦾 Automated translation