Internationalization (i18n for short) is the process of adapting an application to work with different languages and regions.
That can bring some benefits to the table.
Your target group can be broader than the one with the default language of the app.
So by internationalizing an app, you may reach a bigger audience.
Let’s take a Blitz Reading application as an example.
The application allows kids to practice reading sight words.
The more languages we add the more kids can practice reading.
Let’s internationalize the app!
There are cases when a mobile application requires essential information before the start.
The application may need to preload some data from an external API endpoint or even from the local storage.
Without that information, the application might not be able to render a user interface.
For example, the application may not know the display language yet.
Another example could be that application needs to check if the user is authorized and decide which screen should be rendered to the user.
Bootstrapping an application might take some time.
In that case, it would be great to show to the user that something is happening.
One of the ways to achieve that would be to show a splash screen.
The splash screen can contain some information for the user.
It may have an application’s logo or a progress bar.
Let’s see how can we implement that in React Native.
Today I would like to share the list of books I’ve read during the last year.
That is not the list of “my TOP 10 books” of the year. That’s the list of books I’ve read.
That might be a tiny list for some people who read a lot, but that’s my list.
Many mobile applications today are targeting people from different countries.
When an application supports several display languages it can reach more people.
Besides the display language, a multi-lingual application can serve different content for different languages.
When users decide to change the language of an application, they need to go through some sort of language selector.
That language selector should allow users to see the list of supported languages and choose the one they would like to use.
Today I would like to implement one version of that language selector.
There are billions of ways how to implement language selector.
It can be as simple as a set of icons, which a user can click to change a language.
I would like to implement the one which looks similar to the language selector in the Instagram app.
Sooner or later we need to get a custom input from a user.
In that case, we need to render one or several fields and allow the user to provide us with the data.
Then, we need to process that data.
Today I would like to see how can we implement the simplest possible input form.
We are going to ask the user’s name and save it.