Насколько широко сейчас можно применять рендер на клиенте?
Идеальная ситуация - клиент и сервер - разные приложения. Это значит что у нас частично дублируется логика и т.д. и т.п. Так же реализация клиента усложняется а реализация сервера упрощается до простой rest api.
По поводу грани - ее выставляете вы. Просто оцените по времени, сколько вам будет по времени занимать проект какой-нибудь с классическим подходом и на том же AngularJS. Например бложик написать, обычный такой бложик. По сути тут нет никакой логики. Сервер может просто закешировать и отдавать HTML. Нет смысла делать динамические переходы так как 95% страницы всеравно заменится, да и происходит это не часто.
Что до поисковиков - это так же добавляет хлопот. либо подключать сервисы типа prerender.io либо реализовывать что-то подобное на базе phantom.js
Я лично на Angular только web-приложения делаю. Там не нужно парится сильно с индексацией. Сайты делать на нем в большинстве случаев смысла не вижу, тут проще делать динамичными только отдельные элементы которые на самом деле этого требуют.
Ember.js будет иметь встроенную возможность рендерить на сервере emberjs.com/blog/2014/12/22/inside-fastboot-the-ro....