Single Page Applications

Single Page Applications are a powerful alternative to traditional [[ Server Side Rendered Application ]] web apps, where the processing is done on the server side. By contrast, SPAs have the ability to run the user interface logic on the client. They are sometimes referred to as [[ Client-Side Rendered Applications ]].

SPAs dynamically update content on the user interface without reloading the entire page.

Advantages of SPA:

  • Faster and more responsive UX that’s more seamless
  • Reduces server load as clients do a lot of the processing
  • Allow more powerful user interfaces akin to a native app
  • Easier to work with APIs since that’s at the core of the framework

Disadvantages of SPAs:

  • More complex to develop, placing a higher demand on the developer skills
  • Can be an issue for SEO since the content is dynamic and not static, so it can’t be easily crawled
  • Longer initial app load time because of the application logic
  • Only works if the browser allows JS, which isn’t always the case
  • More complex state management because the client has to remember the sequence of actions
  • More prone to memory leaks

Notes mentioning this note