The Single Page Application (SPA) is a fairly new concept in the area of web application design, but nevertheless has grown significantly in popularity with the increasing attention to delivering a more fluid user experience (similar to a traditional desktop application) for web applications. The primary distinction between an SPA and a traditional web site is that the SPA will load the majority of its content when it is first loaded, whereas a traditional web site will only load content as the user specifically requests it. Also, as a user navigates within an SPA, the application will stay on the same main web page, whereas a traditional web site will request and load a brand new page each time. Thus, an SPA might launch slower, but will typically become more responsive (than a traditional website) once running. There a few techniques that are involved in the design of an SPA, as described below.
Single page with replaceable content
In conjunction with navigation, the SPA should also maintain a history of navigation within the app itself. This is to allow the use of the back and forward arrows of the browser, in order to navigate within the history of views visited by the user.
Asynchronous data access
Here are a few of the prominent frameworks: