Chapter 1. What is a single-page application?


This chapter covers

  • The definition of a single-page application (SPA)
  • An overview of the basic elements of an SPA
  • The benefits of SPAs over traditional web applications

Developers have been chasing the dream of delivering web applications with the look and feel of native desktop applications for about as long as they’ve been writing them. Various solutions for a more native-like experience, such as IFrames, Java applets, Adobe Flash, and Microsoft Silverlight, have been tried with varying degrees of success. Though different technologies, they all have at least one goal in common: bringing the power of a desktop app to the thin, cross-platform environment of a web browser. The single-page (web) application, or SPA, shares in this objective, but without a browser plugin or a new language to learn. The idea that a native-like experience can be realized using only JavaScript, HTML, and Cascading Style Sheets (CSS) is a tantalizing thought, but what is an SPA under the covers, and where did this idea begin?

1.1. SPA in a nutshell

1.2. A closer look

1.3. Benefits of SPAs over traditional web applications

1.4. Rethinking what you already know

1.5. Ingredients of a well-designed SPA

1.6. Summary