Как организовать архитектуру Javascript приложения без использования MVC фреймворков?
Moduls + Event-driven architecture, например. Приложение разбивают на модули. Общение между модулями происходит c помощью событий, что, соответственно, снижает зависимость и т.д.
Подробнее можно посмотреть здесь:
tech.yandex.ru/events/yasubbotnik/chlb-feb-2012/ta...
Также можно погуглить MV*-фреймворки.
Angularjs хорош для SPA.