Какой есть Javascript framework для многостраничных приложений?
Сейчас весь веб помешался на одностраничных приложениях. Есть множество фреймворков для них.
Но ничего непонятно с многостраничными приложениями.
В моем случае есть многостраничное приложение, которое развивается уже больше года.
Обладает довольно сложной бизнес логикой на уровне моделей, и сложной структурой веб клиента на уровне контроллеров.
Должно быть как можно больше отказоустойчивее, так что пишется по принципу nojs, то есть если человек зайдет с нокии N70, то все у него будет работать на простом html.
Но для современных браузеров необходимо прикручивать крутые плюшки, из разряда крутых js дата-гридов, связанных графиков и прочая.
Написан проект на rails. По умолчанию, относительно проекта структура js в рельсах - разные файлы, а при сборке получается все тот же спагетти код.
В какой то момент захотелось от него избавиться, и получить хоть какую то структуру на уровне js, и был взят backbone.js
Но он тоже рассчитан на одностраничники, множество вещей пришлось дописывать и доводить до ума, чтобы цепляться к готовому html, доставать модельки из дата атрибутов и тд и тп.
Многое все равно приходится дублировать между rails-логикой и js-логикой, не смотря на то, что все стараемся переносить на API.
Поддерживать такое становится все труднее.
В общем сам вопрос.
Если ли какой-либо фреймвок, или best practices для поддержки js приложения над большим web приложением?
Похоже, у нас с Вами примерно одинаковые проблемы.
Я пока ограничился написанием небольшой системы pub/sub (js, jquery events) + клиентский шаблонизатор.
У нас подобное. Backbone для структуры и основных примочек(модельки, ивенты, структурированные вьюхи), куча плагинов, шаблоны если простые - jst.eco, если очень сложные, рендерется в отдельном разделе API (да да да, это пошло, но нужно было как то быстро решать проблему) и забираются аяксом, и дт.
Все равно получается громоздко.