Microsoft Provides More Clarity For Progressive Web Apps (PWA) in the Windows Store
Today Microsoft released a new Blog post detailing their plans for Progressive Web Apps (PWAs) on Windows.
The blog post clarified information we picked up at the September Microsoft Edge Developers Summit. They re-emphasize the importance PWAs play in the overall Windows app story.
While the Blog post answers many questions, to me there are still some they areas that we need to have better clarification on and possibly some better feature sets.
Microsoft and the Microsoft Edge team is 100% behind Progressive Web Apps and want to make them a first-class app citizen on the Windows platform.
To do this Windows will accept PWAs to the app store and make them equivalent to UWP applications. To do this they are allowing two avenues of store ingestion:
- Automated ingestion via the being search crawler
- Manual submission to the app store like a regular app
This is nothing new, as Windows has supported the concept of a Hosted Web App (HWA) since Windows 10 was is released two years ago. The difference now is Microsoft is championing the name Progressive Web App and also adding active service workers to the primary criteria.
Microsoft released a version of Edge with service workers on by default just before Christmas. If you're on the Windows Insider builds and have at least a version 17063, then your version of Edge has live service workers.
Being App-Like
Because Microsoft feels the Progressive Web Apps should be discoverable, they are using the Bing crawler to find and identify websites qualifying as PWAs.
They are looking for key criteria:
- The site must be served using HTTPS
- The site must have a valid web manifest file
- The site must have a registered and working service worker
These are the standard minimum requirements to be a Progressive Web App. This does not mean that your app will automatically be added to the Windows Store.
There are still a set of 'vague criteria' that your Progressive Web App must meet. Sort of like Apple says with their app submission policy it must be app-like.
Unfortunately both Microsoft and Apple have failed to define exactly what it means to be app-like.
I don't think a site like Love2Dev.com would be considered app-like. But this does not necessarily mean that it may not be able to make the Windows Store.
I also have several PWA demonstration apps that may make the store. For example, I have a version of 2048 that I plan on submitting to the store. I'll let you know how that process goes so you'll know if it gets excepted in you can download it yourself.
Imagine being in the app store as an extra layer of visibility, but you also get access to deep platform integration.
These integrations include hooking up with Cortana and other non-web standard APIs like the integrated contact list. You also get access to Windows specific advanced technologies around things like virtual-reality etc.
Personally these aren't all that compelling as I really don't find the need to access these APIs and features right now. That could change at any moment and may be different for you. Right now I don't have customers asking for these features, so they are below my radar.
The Add to Homescreen or Lack There of
The Microsoft app store is the only way you can earn a live tile in the user's start menu. This is a regression from Windows 8 when you could get a live tile from the Edge Metro addition.
This highlights a gap that I think is glaring in Microsoft Progressive Web Application story, no add to Homescreen experience.
Android features a really robust add to Homescreen experience that all the browsers seem to have adopted some form or another.
Android browsers (in general) will automatically prompt you to add a Progressive Web App to your homescreen if it is not already added.
Of course Microsoft has abandoned mobile, which leaves it only with a desktop. So on Windows the add to homescreen experience would be called the add to desktop or start menu experience.
Chrome on Windows allows you to prompt the user automatically so they can add your Progressive Web App icon to their desktop. When they launch from the desktop they launch as a full screen application experience.
I consider this a gap because I think most Progressive Web Apps will fit in the space, somewhere between a website and an app. Not necessarily needing a presence in the platform store, but benefiting from the deeper engagement offered by a live tile or desktop icon.
PWA Discoverability & Bing
Personally, I consider search engines to be the primary way to discover websites and apps. They do a much better job at curating and sorting through the content available.
This also allows a segway to another topic I wish we had more information on, search engine visibility. Will Microsoft use Bing to visually indicate search results that are Progressive Web Apps?
There has been some discussion in this area, but I'm not sure where it is progressed.
Personally I would love to see this!
Right now if your site uses Google's accelerated mobile pages, you get a differentiated view in the search results. I don't see why Bing and Google for that matter, could not do something similar for Progressive Web Apps.
Manual Store Submission
What if you need to submit your Progressive Web App to the Windows Store manually?
The great news is a Progressive Web App in the app store is just an appx file. appx files are a zip file of your application's assets, including the web manifest.
But if you're like me, the app store submission process is just that, a tedious process. I'm all about automating things.
Fortunately, the Microsoft Edge team has created a fantastic tool to help you either get started with Progressive Web Apps and also automate store submission. It is called PWA builder.
This is a website where you can simply submit your site's URL and it will walk you through the process to create the core assets needed for your site to be a Progressive Web App.
PWA Builder will make a baseline set of icons, a valid web manifest file and even give you a simple service worker to get started.
The biggest magic feat is PWA Builder's ability to automatically submit your new Progressive Web App to the Microsoft store. You will still need to provide some basic information along the way, but at least that part of it is done for you.
Should You Create a PWA or a UWP?
I think many developers and stakeholders might ask the question of which one they should focus, PWA or UWP? The Microsoft article discusses these options.
Personally, I don't really see any advantage in creating a native app anymore. End-users have voted with their fingers and stopped downloading native apps several years ago.
The cost associated with creating native apps for each platform is much higher than creating a single stand-alone Progressive Web App.
In fact even if you wanted to create one standalone app for one platform it is generally more expensive than creating a PWA equivalent.
As the article points out, maybe your team doesn't have skills to develop websites. Maybe you're geared up towards making those native applications. If so you still have that option and you'll be on equal footing with the Progressive Web Apps.
What about app store fees?
A question I have about Progressive Web Apps in the app store is will Microsoft take their 30% cut of your revenue?
I still haven't found the answer to this question. I'm hoping the answer is no.
Web apps can use something like a Stripe, PayPal or other credit card gateway to process payments.
We've been doing this and the web for nearly 3 decades now. It is a pretty standard and easy to integrate process.
The transactions fees are usually 1.5-3% of the transaction price. Far less than the 30% charged by app stores.
Is There an Enterprise PWA Story?
For the most part enterprises use websites for line of business applications. It's because there's much less hassle to distribute them to their employees than going through app stores.
But there are cases where native apps and app store distribution makes sense. However this line is getting further blurred by the power and accessibility of Progressive Web Apps.
My question here is, if an enterprise wants to use the app store for their Progressive Web Application distribution what does it look like?
So far the only answer I've got is: it is probably similar to the existing enterprise story for regular Windows Store apps.
This makes sense if you think about it. You are submitting your PWA to the store and it becomes a regular app. At that point it inherits the standard distribution rules.
Summary
It's great to see Microsoft making more noise about Progressive Web Apps. Personally, I've been able to talk to several of the article authors over the past year about the Progressive Web App story. I can tell you from personal experience that the entire Edge team is very enthusiastic about Progressive Web Apps.
This is good news for businesses, enterprises and general consumers.
Progressive Web Apps offer a rich experience, but without the hassle of the native distribution process.
The Microsoft is taking a step beyond the ones Google has taken so far. They are using the app store to distribute Progressive Web Apps. Microsoft feels Progressive Web Apps have an equal footing for native app like experiences.
There's something to be said about the mental approach toward a Progressive Web App if it's in the app store and perceived to be a regular native app.
I think a good rule of thumb for all of us deep geek enthusiast is: normal people really don't care how we build the user experience. They just want stuff that just works.
Microsoft has given us another distribution avenue. This should lead to great success opportunities for businesses of all shapes and sizes.
Developers can also benefit because now they can really leverage those web skills to deliver some even richer user experiences. However, they need to become skilled in service worker and performance best practices.
Because PWAs are gaining momentum in 2018 it's time for developers to level up their skill-set when it comes to working with Progressive Web Apps, service workers and web performance optimization. That's why created the course Progressive Web Apps: Beginner to Expert.
Progressive Web App Training and Examples
Still not sure how to upgrade your existing site to a progressive web app? No worries, feel free to contact Love2Dev. We would love to get your started and help you unlock the best way to engage with customers.
Do you want a much more detailed set of progressive web app and service worker tutorials? I just launched a new course, Progressive Web Apps : From Beginner to Expert.
This course covers everything you need to know to make any website a progressive web application. There are beginner topics to help anyone get started with progressive web app and service worker development. There are also modules to teach you how to polyfil many modern PWA features like offline and add to homescreen tactics.
Enroll today and save $171 off the $200 price. Progressive Web Apps : From Beginner to Expert is only $29 for a limited time.
Get Started Today
Get started adding an SSL key to your web site. Next create and reference a web manifest that describes your web site. Finally, create a simple service worker and register it in your web site’s code.
Applying these three technical requirements can be done in as little as 10 minutes. From there start exploring the new features and how you might apply them to your web site presence or application. Before you know, your website is an app.
Progressive Web Apps From Beginner to Expert
Do you want a much more detailed set of progressive web app and service worker tutorials? I just launched a new course, Progressive Web Apps : From Beginner to Expert.
This course covers everything you need to know to make any website a progressive web application. There are beginner topics to help anyone get started with progressive web app and service worker development. There are also modules to teach you how to polyfil many modern PWA features like offline and add to homescreen tactics.
Enroll today and save $171 off the $200 price. Progressive Web Apps : From Beginner to Expert is only $29 for a limited time.