Single Page Applications (SPA) is a website design approach popular for faster loading and attractive user interfaces.
When a user interacts with website, it dynamically rewrites the current page instead entire page reloading. This makes it faster than websites and web apps.
After one or two similar implementations in 2002, SPA was introduced in the same year in one US patent by Lucas Birdeau, Kevin Hakman, Michael Peachey and Clifford Yeh.
Popular SPAs: Gmail, Facebook, Google Maps, Twitter, Google Drive
You can build SPAs using frameworks like AngularJS, Ember.js, Knockout.js, Meteor.js, React, and Vue.js.
- Storage optimization
- Easier to debug
- Better client-side rendering
- Limited server access
- Faster interaction and reloading
- SPAs are not SEO compatible
- Navigational complexity
- Performance monitoring issues
- Less secure
- Lack of maintainability
Avoid SPA for:
- Purely static content websites
SPAs are a good option for responsive websites and data streaming requirements.