Loading an application and hydrating with data seems like the ideal architecture. Especially when your single application can run on the web, mobile, or a desktop.  A choice between thin and thick clients seems a little mainframe versus PC.  The web started as a page-based text-focused entity, but I don’t understand why it needs to stay there or why thin clients are the ideal pattern.  Certainly first load &amp; SEO can present challenges, but both these problems are going away with React&#x2F;Angular2 server side rendering and Google’s progress with indexing web apps.<p>Maybe I’m missing something, but SPAs seem like the future (perhaps compile to JS or whatever, but still thick clients).  The backend should be concerned with clean APIs to data and not with rendering the view.  If people want to turn off JavaScript for a text only web, well some people still use flip phones and everything depends upon what you are building and for who and how quickly you can move in either paradigm.  I’d suggest studying either the Angular or React ecosystem, but don’t expect SPAs to go away.