@xmoonlight все очень просто. Если вы решили хранить локализацию в базе или в отдельном php-файле, то при каждом изменении этого файла перегенерируете результирующий js-файл.
$langMap = ['header' => 'Заголовок', ....];
// проверяете дату изменения файла, записываете ее в любое хранилище
file_put_contents('locale.ru.js', json_encode($langMap));
AMD хорошо подходит тогда, когда ваше приложение многостраничное и содержит большое количество редкоиспользуемых модулей.
Просто если на вашей странице будет включено 20 модулей, то они все будет загружены. А если 100, то все 100. Просто загрузка 100 модулей делает ваше приложение очень нестабильным. И чем больше будет отдельных модулей, то менее надежным будет приложение.
Кстати, рост количества запросов к вашему серверу будет подобен снежной лавине при росте количества клиентов.
Думал уже, но возникает проблема с другими языками. Не могу напрямую в шаблон записать. Система минимум должна работать с 5 языками - английский, русский, немецкий, испанский и французский. У каждого свои заморочки.
Что вы будете делать, когда вам потребуется применить класс, если вам нужно будет применить/заменить класс только для каждого пятого и седьмого изображения. А если индекс должен быть простым числом? А если следующий класс будет зависеть от предыдущего? И через месяц там уже будет код, в который вы сами не захотите лезть. А уж тем более другие разработчики.