frontend i18n solution