cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
brochard
Making moves
Status: In review

Progressive Web apps are an important feature of a browser that Firefox is the only one missing.
For some, it can be the reason to switch to another browser.
In other cases like for the Steamdeck, it's what imposed the choice to only include Chrome in the SteamOS interface.
Other problem even for avid Firefox users, since I wanted Social apps on my pc I had to get them on the Microsoft Store which is an Edge PWA that opens every link in an Edge window, making me use this... other browser.

358 Comments
tiziodcaio
Strollin' around
Tobias1
New member

You already had web apps. Please bring them back.

It is unacceptable that this doesn't exist.

itme_580
Making moves

It almost feels like they are intentionally trying to lose market-share by not implementing useful features.

六六
Making moves

我注意到手机端已经有了 安装 按钮,何时在pc添加呢?

I noticed that there is already an install button on the mobile phone. When will it be added on the PC?

SMHH_Masum
Strollin' around

This is certainly a great necessity.

ben2talk
Strollin' around

People should avoid confusing the mobile function (which merely places a shortcut on the home screen) to the 'install webapp' function which creates a shortcut which will launch the same link in an isolated profile.

Even in Chrome, this is deliberately confusing (simply labelled 'create shortcut') and apparently pointless given that any bookmark is available to launch from a main menu.

JamesP
New member

PWAs are enabling what end users needs nowadays: being able to receive notifications via badges on their smartphone / desktop app with ease (ie not relying on RSS as most of people don't understand how it works).

This is key for web products to have a chance against native apps. I can't see a bright future for Firefox without PWAs .

ben2talk
Strollin' around

Forgive me if I'm wrong, but you can't get notifications from Firefox (running in a browser window/tab or PWA) unless it's running. There's no difference using the browser or PWA and this is not relevant to mobile OS.

Adonnen
Strollin' around

@ben2talk 
A few caveats:
If I am understanding you, your objection is that there's no difference between receiving notifications from websites in-browser and in PWA because the browser has to be open in the background.

While this is true, it doesn't make PWAs useless. The truth is, most web apps that need notifications will recommend users download and run an electron app in the background (such as Discord or Signal).

This is actually worse than having PWAs for each service and running the browser in the background. Most (I think most, not all) electron apps run their own chromium binary, so having multiple electron apps in the background is a massive waste of RAM and processing resources. This is also how the FirefoxPWA extension works. By contrast, real PWAs run under the same binary as your other PWAs and browser windows.

Even better, some sites fetch notifications with push notifications, where instead of having to run the entire webpage and checking constantly if new notifications are received, notifications for many different apps are sent to a single web server, and your computer/phone only has to check that one server for notifications. This is more common with native apps than web apps at the moment, but universal adoption of the PWA standard could provide a more feasible path to adoption. Even without push notifications, service workers can run in the background with considerably less impact.

Sorry this was a mess, I might've gotten something wrong. The bottom line is that better notification support and PWAs go hand in hand to truly allow web apps to compete against native apps. This isn't a solution in search of a problem because so many 'native' apps are already web apps in bloated electron form, harming user performance.

Firefox ignoring PWAs is a refusal to provide users with a modern web experience and to compete with Chromium and an almost hostile statement to web app developers who are already almost exclusively working with Chromium and Electron.

Adonnen
Strollin' around

@ben2talkYou're mostly right, but it is actually very relevant, at least on desktop.

In general, the browser must run in the background to receive notifications unless they are implemented with a system push notification system. When a website, PWA, or native app supports push notifications, it sends notifications to a server (provided by Google to Android devices, apple to ios/macos, and Microsoft to windows, though there are open standards for self-hosting or third party hosts), and there is a single process running on your device to fetch notifications from the single server.

By contrast, without push notifications, each app must run a background process to check its own server for notification, using multiple times the resources. While most websites don't support push notifications, many don't have to require the full site to be run constantly in the background, only a small service worker script.

Ideally, you want as little running in the background as possible. If you need to receive (non-push) notifications from web apps, then running a single browser in the background than can run all necessary service workers is the most efficient way to do so. PWAs work the same way. While they run in different windows and can have separate settings, they use the same browser instance, so they will receive notifications given the single browser instance runs in the background. So there isn't an advantage to PWAs, right?

The problem is, most web apps that offer notifications (Discord, Slack, etc.) direct users towards an electron app. An electron app is a very inefficient way to run a web app because each basically runs in its own Chromium browser, even in the background, duplicating the resources taken up. The advantage is that users can access their apps directly from the desktop and that they integrate with the system (running in the background, auto start up).

These companies/developers simply do not want their apps to be run in a web browser. Unless there is a suitable alternative (robust PWAs), they will continue to use Electron.

To summarize, PWAs are important because they are more efficient than Electron, not because they are more efficient than a browser. Implementing PWAs in addition to better push notifications and a proper background mode would reduce the complexity and inefficiency for most users. Firefox abandoning PWAs is a statement of hostility to web app developers and an abdication of responsibility to compete with chromium. If Firefox will offer an inferior experience for web apps regardless of developer optimization, why would a developer bother optimizing?

Rayke
Strollin' around

For me, the nice thing about PWAs is having a unique and static app_id/class for a window under sway or i3 so that I can automate arranging my desktop as I wish and easily navigate to them across monitors and workspaces. I use swaywm on my desktop and I like to force some windows to open on certain monitors/workspaces. PWAs give each instance its own app_id that does not change which makes identifying the contents of the window straightforward. That is how all other implementations that I have seen handle PWA windows including Gnomes Epiphany web app implementation. I have a workaround for Firefox with javascript bookmarks to open a popup and a shell script that continuously listens to the sway socket to detect the new window and automatically move it and assign it to a workspace. It is not a great solution since it can't detect which app it is before the window is shown and can't rely on the window title. This causes unwanted, ugly window reformatting every time I create one of these popups since I can't move the window until after it has been created. And I have to launch it from Firefox since I can't launch a javascript bookmark from the command line. If there was a unique app_id/class I would be able to direct the window appropriately before it even opens. I have my Fastmail, Element, Google Voice and a couple of Mastodon instances at minimum open in their own popup windows on various workspaces/monitors that act enough like a PWA for me once I have them open and placed where I want. They do not live on the same workspaces/monitors.  With 3 monitors and 10 workspaces having things sitting in tabs does not work well since I can only search for the active tabs with my task manager script. With PWAs or in my case popup windows I can task switch between them just like any other app when even when they are on a workspace that is not currently visible. I will live without PWAs on Firefox since I am not going to use anything Chromium based and I have a livable workaround. However, it would be a significant quality of life improvement for me and my desktop workflow and I imagine to other swaywm and i3-wm users to have that unique app_id.  I think KDE might be able to work with that app_id for it's scripting as well.  We are a minority but I figured I would chime in on the unique app_id/class part of PWAs it since I did not see that mentioned in any of the other posts. 

Kenneth_Jensen
New member

I actually switched browser because of the lack of pwa support... Hope it will be implemented soon. 

berd
New member

would love to see them

Reload6390
New member

Firefox should be able to create a completely independent session for PWAs but also be able to offer a PWA like experience for websites not supporting PWA, such as AliExpress.com.

On that way, we can use "apps" for any website, using Firefox/gecko as an engine, with the benefit of using add-ons to block content or shape the"app" on the way we want.

Horus_Sirius
Making moves

So PWA's give normal users a feeling that reminds the youngest generation more of a smartphone.

If I could estimate, this type of device is the entry into the computerized world of the latest generation.

A PWA also leads to more variety when using the website, thanks to desktop icons or taskbar icons, smaller websites are less likely to be forgotten.

There is an advantage, for example, in offline caching but also in caching in general.
It is possible to specify in a PWA which web content should be transferred directly to the cache to be loaded from there.