я это спрашиваю, потому что в nuxt, next, angular universal встроен серверный рендеринг (судя и по демо проектам, и по сайтам), но они же являются фронтом. Если бэк на спринге, который плюется жсонами, то как это работает? Я думал, что этот фронт на основании жсонов генерит странички и отсылает. Только не понимал, где он это делает, поэтому сказал про ноду
Реакт и ангуляр (остальные я не использовал никогда), могут вполне жить и без серверного рендеринга, т.е. это далеко не обязательное условие.
Серверный рендеринг, обычно, использует джаваскрипт. Соответственно, надо где-то этот джаваскрипт запускать. Это можно либо бэкенд писать на джаваскрипте, либо запускать этот джаваскрипт внутри той системы, на которой бэкенд написан, либо ещё какие-то комбинации этого использовать. Там много разных вариантов может быть.