Think of an
SPA[
^] more like of an old winapi desktop application, but running on web.
The main concept is, that EVERY communication between the client side and the server side is done via ajax calls. MVC is a good platform for that, but there is a wide range of possible implementations. The most inelegant way is to render the html code on server side, and use ajax only to display it and catch events - the other end is to move every presentation layer function to client side, and use DOM to build and handle the GUI.
A template is just a template, but I am not sure, it was removed:
http://nuget.org/packages/SinglePageApplication[
^]