пробовал extjs, dojo и backbone + jquery
первые два сильно отличаются от последнего в назначении.
Они не предназначены для создания сайтов в привычном представлении, а для создания оконных приложений в браузере. Фреймворки для создания толстого клиента системы. При том с dojo у меня постоянно возникали проблемы.
Проблема, которая больше всего запомнилась — странный набор storage. Есть хранилища, которые держат данные в клиенте, загрузив единожды, и есть несколько, которые запрашивают данные с сервера. Из тех, что работают по запросу, одно хранилище было read-only, а второе требовало REST на стороне вебсервера
В последнем проекте использую backbone — удобная и гибкая штука. Его достаточно чтобы создавать одностраничные сайты, но нет виджетов интерфейса, как будет выглядеть сайт остается полностью на твое усмотрение.
В любом случае плата за всю эту роскошь — огромное количество js кода.