Preference types
There're three main types of preferences we're concerned with when designing large-scale JavaScript architectures. These are locales, behavior, and appearance. In this section we'll provide a definition for each of the preference categories.
Locales
Applications today can't support just a single locale, if they're going to succeed on a global scale. Because of globalization and the internet, demand for applications created in another part of the world is the new norm. Therefore, we have to design our JavaScript architectures in a way that accommodates many locales, seamlessly. Users in one locale should be able to use our application with the same ease and confidence as users in any other locale.
Note
The process of enabling components to use any locale is called internationalization. Then, the process of creating locale-specific data for our application is called localization.
What makes internationalization/localization so difficult is that it touches every visual aspect of...