ScandiPWA Benefits Update: August 2020

ScandiPWA
Progressive Web Apps
8 min readSep 2, 2020

PWAs have been advocated as the future of the Web on multiple occasions in the past, and now, in 2020 we see that a lot of these claims have been justified. An array of Magento-based eCom businesses across the Internet have adopted the technology to their advantage: Zadig & Voltaire, Malianta, One Open Sky, UK Meds, Eleganza, Peter Jackson, Auto Bernard — the list goes on indefinitely to include startups, enterprises, and everything in between.

The increased rate of adoption is reflected, among other things, in the growing selection of PWA solutions offered for various platforms. Magento PWA providers include ScandiPWA, Simicart, Tigren, CedCommerce, NexPWA, Vue Storefront, Front Commerce, Experius, Digifutura, Storefront Cloud, SoftLand Technology. The choice may seem overwhelming, and a substantial amount of research is required to determine which solution is right for your needs.

In this article we’d like to bring you up to date on some of the fundamentals as well as hot new features of ScandiPWA, to help you gain a better understanding of what differentiates it from the pack. The following sections will take a closer look at:

  • Magento feature support;
  • Integration of admin interface;
  • Data caching;
  • Community support;
  • The simplicity of installation.

MAGENTO FEATURE SUPPORT

PWA adoption is a commitment that can either boost a business or hold it back indefinitely. Before investing any amount of time and resources into a specific PWA solution, there is a simple question you want to be able to answer: Is it the right match for my business?

For a Magento-based eCom, a quick way to determine this is to take a look at the list of supported Magento features. Not only does it allow you to understand if the given solution supports your current business requirements, but also helps to evaluate the possibilities of future growth and ease of further functionality upgrade.

On this premise, we are deliberately upfront about Magento features that ScandiPWA currently supports. With the full feature list available on our website, our goal is to make it perfectly clear which features are already available, and which ones are currently in development.

All in all, ScandiPWA supports over 300 default Magento features, including

  • Multistore
  • Customer account
  • Default search
  • Multi-language
  • Multicurrency
  • Simple products
  • Configurable products
  • Bundled products
  • Virtual products
  • Tier prices
  • Coupon codes
  • Card price rules
  • 301 redirects
  • and many more

Does this approach seem like common sense? Yep.

Alas, this kind of openness is rarely the case among PWA solution providers, who tend to announce their supported Magento features in general terms — along the lines of “The main things are supported”.

The reason is that a lot of the time out-of-the-box functionality development takes an experimental path, with some features changing or breaking from one release to the next. This leads to a situation where certain features are not truly supported, thus, making it hard to provide an extensive and accurate list.

By contrast, we are driven to share this information exactly because we are confident that our declared Magento feature support is stable from release to release. At the same time, we make sure that these features are consistent throughout the entire customer journey — from the customer account to checkout.

E.g. Multiple addresses are supported in the customer account, checkout & the customer’s order history.

INTEGRATION OF ADMIN INTERFACE

PWA is primarily a front-end technology, however its features don’t reside on the front-end exclusively. Whenever you need to make changes in the page setup, you should be able to access the site’s back-end and update Magento default settings as needed.

E.g., consider these simple tasks:

  • Add a new element to the layered navigation;
  • Change element order in the photo gallery;
  • Sort the product list by a particular attribute;
  • Change the default element sorting order.

In regard to this basic idea, ScandiPWA is currently the only PWA solution that respects your admin interface settings — just like a regular Magento theme. The only difference being it does so in a PWA / React format. Anyone who has worked with a Magento theme before will be able to easily navigate and configure ScandiPWA the same way they’re used to.

Why is it a big deal? Because most attempts to configure other PWA solutions beyond default settings will leave you seeking help from a developer.

Some of the most common dev tasks include;

  • add a new attribute to GraphQL schema;
  • add an XML somewhere to update layered navigation;
  • change product order;
  • add a product attribute;
  • troubleshoot misconfigured features.

To help customers avoid these hurdles, we made ScandiPWA readily configurable, allowing any changes to propagate straight to the front-end as soon as they appear in the back-end.

DATA CACHING

One of the most common bottlenecks for all things Web has been the sending of repeated server requests. Thus, the industry is constantly forced to either optimise the existing approach or search for alternatives.

GraphQL is among the best tools to technologically optimise data fetching and significantly speed up the response. Indeed, we’ve used it with a good deal of success, achieving speeds as high as 260ms per request. However, due to architectural decisions made by Magento, GraphQL still generally takes upwards of 1s per request. Furthermore, thousands of identical requests daily contribute to the undesirable increased server load.

In the applications where data exchange speed is critical, the introduction of data caching proves more viable. ScandiPWA addresses this by using Varnish + Redis as a caching layer. In simple terms, the setup is as follows.

Default Magento Varnish and Redis, empowered by persisted query mechanism work to store GraphQL responses and queries. The stored responses are then invalidated as soon as changes are introduced on the Magento side.

What is the advantage of this solution?

Magento has offered consistent support for both Varnish and Redis for years, including them in a number of default integrations. Both the Magento team and a huge Magento community have invested a lot of effort and resources to make sure this configuration runs as smoothly as possible.

A stable no-nonsense protocol assures that, whenever Magento introduces page changes, such as price, static block, CMS, category page format, etc., these records are immediately invalidated in Varnish. Thus, there is no need to run data bumps or mess with webhooks — any changes in the back-end will be immediately reflected in the front-end.

These are some of the biggest reasons why we chose this setup for use with ScandiPWA.

And uniquely so: we’ve been able to achieve the ultra-speed of 12ms response time on PWA with the same tools that Magento has used for ages!

SIMPLICITY OF INSTALLATION

NO MIDDLEWARE

Middleware is commonly used in web development. However, it has drawbacks that make it undesirable for use with eCom projects. Additionally, it may complicate a theme installation process.

For example, it implies that your information is stored remotely. This can potentially compromise data integrity, causing new products failing to update, or serving items that have been sold out, etc.

ScandiPWA rules out this liability by bypassing middleware altogether. Instead, we use a single Magento database with the same caching layer that Magento has been using for years. As a result, not only is data integrity preserved, but setting up ScandiPWA is a matter of simple installation, either locally, or on an external server.

Even Magento Commerce Cloud, which is notoriously restrictive about what it can and cannot run, has no problem running ScandiPWA. No extra services or assistance from the Magento Commerce Cloud team is required — it just works!

MATURITY

Approved by enterprises, and favored by various Magento Commerce license owners selling anything from kitchenware to sports goods and beyond — ScandiPWA has been successfully deployed both on Magento Commerce Cloud and on-premise.

Examples include

  • A Mid-Asian $1BN marketplace, running ScandiPWA for over a year now;
  • The recent addition of a $1BN B2B Norwegian agricultural cooperative.

The number of similar cases keeps growing and includes multiple enterprise-grade clients, as well as countless startups. All this is a clear indicator that ScandiPWA is a solid, mature solution able to meet very strict business requirements, and supported by the market itself.

EXTENSIBILITY

We are convinced that, in order to keep pushing the envelope, ScandiPWA has to provide both great out-of-the-box functionality and easy customizability to suit a wide range of business needs.

Hence, our motivation to launch a dedicated marketplace. A unique feature among PWA solutions, it already offers nearly two dozen extensions, with many more due for release in the coming months.

Offering a range of purpose-built extensions (most of them — free!) aimed at different services and Magento / ScandiPWA versions, the marketplace is getting good traction. It is a great platform for helping us inform and educate leading extension providers on how to build for PWA, and we see that multiple vendors are already working with this format.

Additionally, ScandiPWA 3rd version supports extensibility in a true Magento sense, being able to plug in anywhere — just like any conventional Magento theme.

COMMUNITY

Every PWA solution on the market has their own online community. ScandiPWA is no exception.

At your disposal is an extensive knowledge base with over 20 video tutorials and a detailed Wiki documentation to get you on the right track. Besides, there is a dedicated Slack channel with 600 active users sharing information with each other, and connected directly to our team.

ONE-COMMAND LOCAL SETUP INSTALLATION

By design, ScandiPWA is the most developer-friendly PWA solution, and among the reasons why is our recent addition of a one-command local setup option.

As of now, the feature is in the phase of active development, but we are happy to announce some of the functionality that is already available.

The whole development environment is being provided in Docker, including

  • Magento;
  • ScandiPWA;
  • Elastic Search;
  • Redis;
  • NGINX;
  • Varnish;
  • Everything you need to run Magento PHP and MySQL containers;
  • Webpack for hot reloads.

The idea is to make the entire stack easy to set up, in case you require both front-end and back-end.

For those who need to work with front-end only, there is an installation kit with an external Magento2 installation available. Just set it up, point to your external Magento to read GraphQL, and develop locally on an extremely lightweight installation.

15-MINUTE INSTANCE SETUP

Another cool option we offer is to set up a live, pre-live, staging, or development environment in 15 minutes. The name of the tool is ReadyMage (since it is shipped ready made, and runs Magento as a back-end).

About ReadyMage:

  • It is a super-affordable PWA-only hosting;
  • It does one thing but does it perfectly well.

The core idea is simple: $9.99, 15 minutes — and you have yourself an instance of ScandiPWA running Amazon Cloud in the front-end. All that remains is to open the back-end, set up Stripe, change the logo, update the color scheme, and just run it!

Alternatively, you can further customise it to your liking. Since the project is open-source, the entire code base is available in your own Github repository, thus, you will be able to add users, develop and commit on regular terms. After that, we will do the automatic build and all your changes will be immediately deployed to the Cloud.

Troubleshooting the build/application is straightforward since all the data is available in the log management panel, plus ReadyMage is built to auto-scale.

--

--