products refactor and i18n