Sana Evolution and New Technology Stack
Software products function in a world that is constantly changing. It is inevitable that the requirements for any software product change over time. The world changes and therefore the software must constantly change with it. The software products that do not meet the latest requirements of the constantly changing world will be used less and less and will become outdated.
Sana Commerce Cloud comes with a new technology stack.
React is one of the most popular, if not the most, JavaScript frontend frameworks. React is an open-source JavaScript library created by Facebook for building complex and interactive user-interfaces for web and mobile applications.
Many large companies are using React for their projects, such as Facebook, Netflix, Instagram, Twitter, Salesforce, Cloudflare, Reddit, PayPal, etc.
We use React in combination with a couple of other JavaScript libraries for creating our web store and Sana Admin. All web store pages and all Sana Admin pages were rebuilt from scratch with new technologies.
Single Page Application
There are two main design patterns for web applications: multi-page application (MPA) and single-page application (SPA).
Until now, Sana was a multi-page application. But thanks to the transition to new technologies, such as React, we were able to build Sana Commerce Cloud as a single-page application.
What is the difference?
Every time you click a link or button on a multi-page application, the entire page reloads in the browser. The drawback is that all this content can take a long time to load. In contrast, a single-page application loads a single web page in the browser and dynamically updates content without refreshing the entire page.
You are using single-page applications every day, for example: Gmail, Google Maps, Facebook or Twitter.
SPA is fast, as most resources, such as HTML, CSS and scripts are loaded only once, and then only data is transmitted back and forth – so, no page reloads and no extra wait time.
Sana Commerce Cloud as SPA brings the shopping experience which is not interrupted by constant page reloads, but only the parts that are currently needed are loaded. It also performs better on mobile devices with poor internet connection or if the connection to your ERP system is slow.
If certain pieces of information are not ready to be shown to the web store visitor, for example product price or inventory, due to poor connection to your ERP system, web store visitors will see a gray placeholder until that information is returned from ERP to Sana, but all other content will be shown immediately, so web store visitors don’t need to wait for the page to load.