aburd / beats-with-friends

A piece of software where beatmakers can make beats with each other.
3 stars 0 forks source link

Adding i18n support #16

Closed OrPerl closed 2 years ago

OrPerl commented 2 years ago

Feature Request

Is your feature request related to a problem? Please describe. For the application to be able to scale, concentrating text in a central location and being able to switch between various languages (translations) is important.

Describe the solution you'd like I would like to propose i18next as the translation library for use when wanting to translate text. The library implementation is easy to extend to other languages, which is why it has quite a good implementation for Solid (https://github.com/mbarzda/solid-i18next).

It is easy to use and quite straightforward to use, including support for nested translations (ease of reading).

Describe alternatives you've considered An alternative I have taken a look into was solid-i18n is based on intl (format-JS), however, the developer only covered basic functionality, which made me decide to go with solid-i18next instead.

Teachability, Documentation, Adoption, Migration Strategy Since i18next instance contains all the functionalities that are supported by the library. The solid library is basically exposing the functionality by using a provider and context to both wrap the component and expose the translation functionality.

Because of that referring to i18next documentation should be helpful for understanding how it works.

The GitHub repository for Solid-i18next has some good and easy-to-understand examples.

This article is another good introduction to how i18next can work with Solid: https://phrase.com/blog/posts/solidjs-localization-i18next/.