Earlier this year at Imagine 2018, Magento announced the upcoming release of Magento 2.3. It’s now been a year since Magento 2.2 launched and three years since the release of Magento 2.0. Version 2.3 comes with exciting new functions and features—most of which will benefit B2C merchants. The four features we are looking forward to the most are Progressive Web Apps, GraphQL, Async API, and Two-Factor Authentication.
“Magento 2.3 sets a precedent for the removal of legacy functionality in order to stay more progressive,” notes Russell Albin, Application Architect at Blue Acorn iCi. One of the legacy functions leaving is the MySQL search engine, which will be replaced by ElasticSearch. Potentially, KnockoutJS will also be phased out.
PROGRESSIVE WEB APPS (PWAS)
From the consumer’s perspective, it will have the same look and feel as a mobile app including the ability to “bookmark” the website to the phone’s home screen. PWAs will have an offline capability, which means the customer can move through the experience uninterrupted in the case they lose service or drive through a tunnel. However, some functions will be disabled.
What will developers see inside the PWA studio?
- ReactJS for rendering and event handling
- Redux for local shared state management
- Apollo for efficient API interactions
- Jest and Storybook for component testing
- Webpack for optimized builds edits
- Google Workbox for push notifications and offline support
Magento built the PWA studio with the goal of making it easy to use for content developers, including those who have never before developed on Magento. Developers can make small configuration changes and be up and running within ten minutes. These real-time edits are possible due to its headless nature.
Are all Magento users required to use the PWA studio? Ben Marks, Magento Evangelist, answers, “Using PWA studio is not a requirement, nor does it have to be. A PWA-enabling architecture requires well-defined communication mechanisms and boundaries around the frontend, backend, and client. Such a structure lends itself well to the developer ingenuity which has made Magento the top choice for engaging customer experiences that it is today. The terseness of data exchange drastically improves responsiveness even as it reduces processing overhead, the former being a key consideration for Google.”
PWA is open source, so it’s available to all Magento users at pwastudio.io. Currently, users can look through the beta version of the studio and familiarize themselves with the new functions.
When developing the PWA studio, community members focused on creating a series of standards and processes so developers can quickly leverage the studio and launch new projects as soon as early next year.
When asked about his thoughts on PWAs, Josh Brinson, Solutions Engineer at Blue Acorn iCi, says, “I’m most excited about Progressive Web Apps because of the huge potential the new framework offers our clients. Performance is typically the number one requirement for new implementations and the price barrier for a dedicated app is typically too high to create and maintain. By combining the flexibility of Magento with the performance and features of an app, PWAs provide the best of both worlds all from one platform.”
GraphQL is a query API language used for PWA storefronts to transfer data efficiently. GraphQL allows developers to grab smaller amounts of data by making fewer API requests and receiving smaller responses. For example, if you request a customer’s email address from the CRM through a standard API, you would receive all of their attributes (last name, first name, address, phone number, etc.). You would then filter through the response to pull only the email address. With GraphQL, you only receive the elements you ask for.
Marks found in a recent PayPal article that developers spend less than 1/3 of their time actually building UI. The rest of their time is spent figuring out where and how to fetch data, filtering/mapping over that data, and orchestrating API calls. He says, “GraphQL and the application design, which enables it, yields two things: terse, efficient exchange of data (think faster communication between client & server) and ease of experience design.” He continues, “Anything that platform companies can do to make life easier for our developer community will pay off for all of us – including our merchants and their customers.” Keep in mind, only those who use PWA studio will benefit from this feature.
Smaller requests and smaller responses result in a much faster front-end experience. Keep in mind, only those who use PWA studio will benefit from this feature.
“This is what I’m most excited about because I can literally use it from day one,” says Albin. Gone are the “old school ways” of REST API, as Albin describes it. Traditional REST APIs block events as it waits for a response for the server. This is what causes the lag when a customer goes through the checkout process or loading the product listing page.
With Async API, you can make multiple requests without the lag. Each request is given an identifier which is used to periodically check on the progress of the request. “This improves the overall flow of the backend code and allows the customer to continue through the experience,” says Albin.
A subset of the Async API is the bulk API request. Rather than sending three or four small requests at a time, you will be able to bundle them—you send one request, and you receive one response in return. For example, say you have a custom page that fetches all of the customer information, the top three selling products, and the top three products that the particular customer purchased previously. Without async API, this would be three separate requests, but now you can bundle them into one request and get one response. Without the async API in place, bulk operations would take a significant amount of time.
The two-factor authentication is for the admin panel only, so it will not affect the frontend user experience. The much-needed new feature adds another layer of security to the admin panel. Currently, admin users only need a username and password to enter the admin interface. If that gets lost or taken, anyone could have access.
“Users have been requesting this function for a long time, and Magento has finally dedicated resources to make it happen,” says Albin. When the admin panel is more secure, the whole ecommerce site is more secure. Version 2.3 will support three authentication methods: Google Authenticator, Duo Security, and Authy.
OTHER NEW FUNCTIONS
Page Builder is a drag and drop editing tool for site content, intended to help non-technical users to design or update their Magento ecommerce site without needing to involve or hire Magento developers. Within the structure of the page, you can change the appearance, replace images, changes headings, and update copy.
When asked how Page Builder will affect current Magento merchants, Marks replies, “Pagebuilder will change the conversation about commerce content management going forward, both for its core functionality and its extensibility. Its roots are the wildly popular Bluefoot CMS extension. The best part is that It will be available as a core offering at the general availability of Magento Commerce 2.3, and in Q1 of 2019 as a paid add-on for Magento Open Source.”
Multi-Source Inventory (MSI)
MSI allows merchants to manage multiple stock locations for, restrict the source of stock, prioritize fulfillment of orders, and assign sources for each delivery. This will enable you to manage inventory using real-time data and prevent over-selling any products as well as provide the most efficient way to deliver a package to a customer.
MSI comes with a noticeable change from the previous Magento version. Marks states, “For me though the most significant shift – especially for new builds – is the depreciation of the old CatalogInventory module in favor of the new inventory modeling which powers the unparalleled Multi-Stock Inventory (MSI) feature. Both the design and architecture for MSI –much of which was built by the Magento community – are a breath of fresh air in terms of flexibility and extensibility.”
Google reCAPTCHA is another security enhancement to prove the user is human when on the site. Its built-in mechanism detects malicious and SPAM-related activity and presents a human verification challenge to the user. This free service which will help merchants keep the following pages secure from bots: Login, Registration, Contact Form, Forgot Password, and Admin.
Declarative Schema aims to simplify the process for installing and upgrading Magento and its extensions. This will reduce the installment time for new extensions and improve upgrade performance.
The beta version is currently available, but 2.3 will launch in late November. This includes Page Builder, PWA, and MSI. The Sales & Ad channels will release Q1 of 2019 and 2.3.1 will launch mid Q1 of 2019. Anyone can access open source beta, and enterprise beta is available in your account on magento.com. Current Magento partners and customers can kick off the process by completing the pre-release agreement.
Majority of the new capabilities were developed by Magento’s developer community. Marks says, “This is important because our developers take our platform, stretch it, mold it, and massage it to satisfy client requirements. This provides them hard-fought, real-world experience and wisdom which informs their contributions, resulting in a robustness we could never realize on our own.”