DEV Community

Cover image for Single-page applications: Benefits & Technology stack
Diana Maltseva
Diana Maltseva

Posted on

Single-page applications: Benefits & Technology stack

The world of software is constantly evolving and changing. Just a few years ago desktops and laptops have been the main devices all the web solutions were developed for. It’s quite a bit different today, though. Web applications are gradually taking place of the old-fashioned desktop applications.

Why? Because they are universal for all the devices, they are cloud-based and generally more user-friendly. Some might say, browser-based web applications already start losing to mobile ones with many casual users.

But the truth is, web apps are alive and the demand for them is quickly increasing. If you consider outsourcing web application development for your business, you are probably aware that there are 2 general ways web applications can be built: they can be designed as either multi-page applications (MPA) or single-page applications (SPA). And, like all the things in life, both design types have their own advantages and disadvantages.

Some important decisions need to be made before you begin implementing your ideas. To decide what app model suits your business best, you should always consider the content your customers appreciate, because without it presented properly you just won’t attract your clients to use the app.

Hence the essential questions are: what content you want to promote to your target audience and what your users are concerned about.

As I noted above, both SPA and MPA have their own advantages and disadvantages. Let’s try to clear the difference between the 2 types and try to find the right web development solution for your business.

Single-Page Applications

A single-page application is an app working inside a browser and not requiring page reloading when being used. Some of them are used by millions and billions of users every day without even noticing it. GitHub, Gmail, Google Maps, Facebook are the most remarkable examples.

Apps of this type are customized to ensure great UX like a “natural” browser environment —  without any page reloads - no time lag for interactions. Generally, it looks like a single web page that loads the rest of the content with the help of JavaScript.

SPA requests webpage markup and data independently and renders pages directly in the browser. It is achieved thanks to advanced JavaScript frameworks like AngularJS, Ember.js, Meteor.js, Knockout.js.

However, you can successfully use React, too. The biggest advantage of React is accessibility. React is pretty easy to use. Basically, any developer familiar with HTML can create React-based applications.

Another perk is the opportunity to create web and mobile applications using the same technology stack. We use React with Redux library, which lets developers establish a good foundation and build complex, but high-scalable web solutions.

Learn more about Single-page and multi-page applications.

Also, here you can find React documentation.

Top comments (1)

Collapse
 
tux0r profile image
tux0r

Because they are universal for all the devices, they are cloud-based and generally more user-friendly.

  1. I wrote cross-platform native applications years ago. For all the devices.
  2. Not only is "cloud-based" not an advantage, it even makes a false assumption: Nothing stops you from integrate online features into your native stationary application.
  3. I find "web applications" incredibly unfriendly to use - first because they usually require JavaScript (and lower my security), second because they are limited by the HTML/CSS standard. You are so much less free when designing websites when compared to native applications. :-)

YMMV, of course, but your very general statement is not quite true.

A single-page application is an app working inside a browser and not requiring page reloading when being used. (...) Facebook are the most remarkable examples.

Facebook is not a "single page application".