
PWA Store - mattpearl
https://progressiveapp.store/pwas
======
karambir
Awesome collection! One thing I am always curious about, the right click and
open in new tab does not work on the list items. I have seen this on many
recent JS heavy web applications. Is this normal for PWAs to not support
traditional browser interaction points?

I can understand PWA wants to be more than just a web page and have their own
UX. I have more experience in Backend software development and right now
leading a small web/mobile/devops team, and always stress to not override
browser controls unless absolutely necessary. Somewhat similar thing happens
with scrolling. I feel most of the JS overridden scrolling is not needed.

~~~
z3t4
You often have the dilemma whether something should be a link, or just a
button. Links trigger a navigation to another page/URL, although in an "app"
it could just render a new view rather then making a new browser request. A
button is usually not a navigation, although it can render a new view and also
have a unique URL. So the only difference is that you can right click and open
in new tab on links, but not on buttons. And then you have to decide if you
should style it like a button element or a:href element, where a:href signals
to the user that they can right click and open in new tab, while a button does
not. But you can also make an a:href _look_ like a button, which can be
considered an anti-pattern. Buttons do look nicer then links though. And
buttons can also trigger a navigation, like in a form submit, but it's
technically difficult to support submitting and open in new tab at the same
time, because browsers have a hard separation between tabs, where one tab
can't easily access another tab and vice versa. So while it's technically
possible UX is often a matter of budget/laziness and stack/architecture.

~~~
madeofpalk
There's not really much of a delimma. This is a problem that was solved in
"single page apps" 10 years ago.

    
    
        - links are for navigation
        - buttons are for action
    

Styling and appearance are not a factor - you can make buttons look like
links, links look like buttons.

Simple rule is "should this view have a url". Should the user be able to
navigate directly to this page? Should it exist in the history? Should the
user be able to share a URL to that page to someone else? Most times the
answer to all of these is.

In your javascript application, it is trivial to do single page app view
navigations (without triggering a full browser request) by listening to link
clicks and acting on it just as you would if it were a button click. All
frameworks and routing libraries will handle this for you out of the box. If
you roll your own, its not that difficult to add this functionality.

~~~
dalore
Should "book now" be a button or a link?

It is an action, but it navigates you to the booking page. That page should
have a url and should be able to be shared. But wanting to "book now" is an
action and most sites have them as a button.

~~~
kaoD
I will reword GP: if your <button> onClick navigates to another URL, your
button is not a button but a link.

------
franciscop
Interesting, and congratulations on launching the site! How do you plan on
growing and generating demand?

I starting making exactly this back in 2018 but didn't get people interested
back then so I dropped it and let the domain expire, see the original (seems
broken though):

[https://web.archive.org/web/20180901171627/http://web-
app.st...](https://web.archive.org/web/20180901171627/http://web-app.store/)

It was my first time using a skeleton in CSS and using a Google Form as the
way to submit a new app (with the spreadsheet as the database). I believe it
was also my first PWA but I'm not 100% sure about that. While I learned a lot,
some times I regret not having followed through, will keep an eye on
[https://progressiveapp.store/](https://progressiveapp.store/) to see how it
goes.

~~~
mattpearl
well I really just love PWA's and the freedom it brings to the developers and
wanted to create a store to help show their potential.

Appreciate it!

~~~
aabbcc1241
PWA is definitely great for developers and users. But I often see users asking
for native apps even when they're using PWA at hand. They say "It's more
convenience to have app version".

~~~
julianwachholz
I'd argue that many people wouldn't know wether they were looking at a PWA or
a native application written in a JS container format (like react-native).

I can't think of a way that native apps are more convenient? With automatic
updates it's even less convenient to have the updates go through the app
store.

~~~
aabbcc1241
They may not distinct visually, but iPhone user without chrome can definitely
tell.

I totally agree with you, I developed a PWA and 'native app' which is mostly
an webview of the same content. I often use the PWA version but it seems most
(if not all) of my users are using the app version even when the app stores
approve updates in a notifiable slower rate.

My native app do used some native plugin, but those functions are not often
used by the users. So I feel they just blindly ask for apps.

Maybe they think native app loads faster than PWA? People don't want to wait
for a SPA first-time loading but they won't blame the download and install
time of native apps.

------
soared
Awesome idea! I would reccomend seeding this with the pwa version of very
popular apps. If you want to grow this you’ll need to expand beyond people who
know or even care what a pwa is. The easiest way is just to convert people
from using an app they use now to using the pwa.

Think about a random nontechnical Facebook user - How would they get their
feet wet? Likely by opening the pwa of Facebook, realizing it’s pretty solid,
and trying new ones after that. (I’m not saying Facebook is a good example,
just the audience you might think about).

I’d definitely be into helping out with marketing strategy, lmk if you need
advice or an extra hand.

------
enos_feedler
> "This caused app stores to turn into a series of ads and in app purchases."

Right, because the core technology PWA is based on, the web, hasn't been
tainted with ads.

~~~
wyqydsyq
How has the web been tainted with ads?

Many sites people have put on the web based on their business decisions are,
sure.

But that doesn't mean the core technology has been fundamentally tainted, any
business not operating on a model of generating revenue from passive views
generally doesn't display ads on their sites/in their products.

~~~
enos_feedler
I am saying the drive for revenue and the programming model of the web have
created an abuse vector for user experience. That's all. We know it's true
because platforms that have grown dominant on the web (indexing it, for
instance) have to build scores and filters as a layer to protect the user from
this. AMP is another example of investing in the protection of users. If it
hand't been tainted, the user experience wouldn't need this level of
protection from it.

------
jtvjan
Your icon has those stripes on it that you usually see in previews for stock
icons. Are you sure you have permission to use it? (it appears to be from
"Shopping Set 4" by 13ree)

------
hawski
I like the idea, but taking UX ideas from Android or iOS app stores leads only
to frustration. For now there are only a couple of screens worth of apps, so
it's not a problem.

Search is quite useless. It seems to only display list of matching names. So I
can't even search for "game". It does not filter.

I think the UX is supposed to encourage experimentation, but I always find it
daunting whenever I try to find an app for something. There is this bunch of
huge icons, not enteirly clear names or just straight up deceiving ones and a
rating. To get to even a slight neutral description what the thing is one has
to tap in, many times also dive deep in description just to have an idea what
the thing is trying to be. I guess with web platform it may be easier than
normal apps, also I feel I must trust an app much more to install it, but this
gives me the same vibes. A channel of spewed icons and mostly unhelpful names.

Sorry if it sounds harsh, I just can't stand how useless Play Store is at
finding things.

------
tphan
I am not a fan of Material UI (and especially the Material UI library for
React). It looks kinda gross and it's really difficult to customise.

Also, you've made a very common mistake of setting `outline: none` to your
focus states! Very bad for people who navigate using a keyboard.

Good job on launching, by the way.

~~~
spupy
Also, what's up with so many websites being built in a way that makes "open in
new tab"/middle click impossible? This problem is exacerbated by the fact that
clicking "back", either in the browser or in the webpage, doesn't remember
your position in the previous page. Is this due to whatever javascript UI
framework was used?

~~~
kroltan
No, it's due to using a custom event handler to trigger page changes, instead
of the proper <a> link element.

------
blkhp19
I hate to say it but this just demonstrates, all in one place, how far behind
PWAs are from native apps. Does anyone have an example of a PWA (hosted here
or elsewhere) that rivals the best apps seen in native app stores? I’m talking
about beautiful animations, native-feeling navigation, and an overall
immersive, cohesive experience?

~~~
kylemh
Twitter's

The topics of judgement you mentioned are all entirely subjective, but they
run near identically for me.

~~~
dlbucci
Does the native app also constantly fail to load tweets linked from Reddit?
And then you click the "retry" button and it fails again? Cause that's my
general Twitter website experience...

~~~
saagarjha
I think that’s some sort of bug/poor interaction with anti-tracking features.

~~~
dudus
I don't use any anti tracking or ad blockers. I have the normal Reddit all and
Twitter app on my pixel 3a and every time I click on a Twitter link it opens
in an in app browser that can't log me in.

------
paxys
Neat site, but the "Why PWA's?" section is laughable.

> FREE to install

> HTTPS is required meaning you data is secure

> Takes up less storage on your phone. No need to pay extra money for higher
> storage

> No in app purchases or ads. Just a clean and simple app experience

> Has an offline mode. Apps can be used in areas where this is no internet
> connection

All of them are either misleading or completely wrong. The comparison randomly
switches from websites to phone apps whenever convenient.

It would be a lot better to provide a more objective description of what PWAs
even are.

~~~
SimeVidas
The number one reason to choose PWA over native is performance.

~~~
jamil7
Could you elaborate on that? Performance of what exactly?

~~~
SimeVidas
Loading times and responsiveness.

For example, Twitter’s native iOS app is about 115 MB, while their PWA is a
tiny fraction of that, probably not more than a few MB. This unsurprisingly
reflects on performance.

~~~
jamil7
Wow thats huge. I haven't used twitter in years, I wonder if it was always so
bloated.

------
su
Congratulations on the launch.

I have been lately working with lot of clients who want PWA's and I have found
[https://appsco.pe/](https://appsco.pe/) to be one of the nicest PWA gallery.

~~~
satyrnein
What motivates them to want PWAs, out of curiosity? Usually interest seems to
come from developers.

~~~
kevincox
I like websites more than apps for a couple of reasons:

\- Better isolation from my device. I don't worry about them sucking up
information I don't want them to have. \- I can share links to my friends (if
the website has good URLs of course) \- I can use it on every device. I don't
need to worry if it has an Android App and website, I can just use the website
on both. \- I can use the same app as my friends no matter what phone they
use.

------
kevincox
This site doesn't use links so it is very frustrating to use. I was trying to
middle click to open new tabs but it didn't work because they aren't <a> tags.

~~~
pier25
Sadly that's a common problem with single-page apps and modern web front end.

It's trivial to implement but many devs don't pay attention to those things.

~~~
kevincox
People underestimate the value in functionality and consistency that native
interfaces provide.

It is also partially the web's fault. There isn't an easy way to detect an
"in-page" navigation. The best solution I am aware of is:

1\. Add global "click" listener. 2\. Check that the click target was an `a`
tag. 3\. Check that the click was a single left click with no modifiers. 4\.
Check that the `href` points to a page that you can render. 5\. Call
event.preventDefault() and handle the navigation yourself.

But step 3 isn't even sufficient as people can configure their browsers to
open all links in new windows or tabs.

~~~
pier25
> But step 3 isn't even sufficient as people can configure their browsers to
> open all links in new windows or tabs.

You know many people that do that?

I do that for search results and Reddit but I don't want that behavior for all
websites.

~~~
kevincox
I don't know about many but I do something similar. I make all links open in
the same tab. Then if I want another tab I can middle click. This way I can
decide where links open, not the website owner.

------
GoodDreams
Is there a simple way to charge for a monthly PWA subscription without coding
a backend to handle the various subscription use cases and without providing a
complicated UI to subscribers?

~~~
paxys
Well it depends on how "simple" you want it to be, but services have Stripe
have pretty comprehensive solutions.

~~~
GoodDreams
My understanding is that Stripe offers UI to sign up for a subscription, but
then offers only an API for other subscription actions such as changing from
monthly to yearly or cancelling. Someone have a link describing Stripe's
comprehensive UI for subscriptions?

------
IvanK_net
I did a similar thing back in 2012 :) but it was only for web games, which run
without plugins. Authors of games submit the name of a game, the URL of the
game, and the URL of a thumbnail (similar to a PWA manifest).

There is a "gallery" \- a store of games. But most importantly, manifests are
available as a JSON feed, which anybody can use. It is at
[http://www.spreadmygame.com/](http://www.spreadmygame.com/)

~~~
z3t4
You shouldn't open sites in an iframe. Just take the user directly to the
game/page. You can still monetize with ads, like Google does.

~~~
IvanK_net
My idea was, that both the author and a publisher would monetize it.

------
aidenn0
Is there a reason I can't middle click on a game and have it open in a new
tab/window?

~~~
Seb-C
I tried exactly the same thing and then left frustrated.

This seems to be exclusively optimized on mobile devices, and is not even
properly responsive. A progressive web app should be usable both as an app and
in a browser. This is not the case here.

~~~
Cthulhu_
Yup, cells like that should be a link, and if it's a client-side router it
should still not take over from basic browser functionality.

------
hneyman
The Apps I've tried don't seem to work offline on iOS after saving to home
screen.

Does iOS support offline use of PWAs? (Or perhaps this is an issue with my
phone... anyone able to reproduce, or find an App that does work offline?)

Steps: Open App, enable airplane mode, go to iPhone home screen, open the App
again, App is unresponsive.

Apps I tried:
[https://progressiveapp.store/pwa/219](https://progressiveapp.store/pwa/219)
and [https://progressiveapp.store/pwa/87](https://progressiveapp.store/pwa/87)

EDIT: Might be a bug: [https://github.com/facebook/create-react-
app/issues/8889](https://github.com/facebook/create-react-app/issues/8889)

------
wyxuan
The tower game was really good and if you told me it was a pwa I would've been
blown away

~~~
kevincox
[https://www.towergame.app/](https://www.towergame.app/)

------
atupis
Could you build PWA top of IPFS or something similar and create decentralized
apps.

~~~
riyakhanna1983
Out of curiosity, what advantage would that provide?

~~~
atupis
1.fault tolerance 2. scalable and 3. would be a pretty cool and novel concept.

------
dgellow
Let’s say I create a progressive web app. What are the options to monetize it?
I see that this PWA store specifies that a progressive Web app is free. For
the concept to go beyond hobbyists, shouldn’t we sell a different story, like
one where indie developers can make a living by creating and selling their
applications? Mobile app stores have a lot of issues but you can develop a
sustainable business there.

I have multiple progressive web application that I’m currently working on and
I’m struggling a bit with that point.

~~~
wyqydsyq
I think most PWAs are essentially front-end clients to a SaaS, so revenue
typically comes from user subscriptions.

Other than that like another user mentioned there's any monetization methods
on the web at your disposal (advertising, microtransactions, donations etc) it
really comes down to what business model you want to operate on and what seems
most natural for users of your product.

As far as a "buy it, you own the copy" model like with traditional media
software and games go I don't think there is anything universal to use, most
developers would implement their own licensing in their billing/accounts layer
and expose a serial key or something that local data gets encrypted with as a
rudimentary DRM, so the app can only be used later by having the right serial
key (whether from LocalStorage/cache/a fresh login) for that paid user to
decrypt and use their local data.

It would be interesting if some service like PWA Store were to offer some kind
of universal DRM to developers wanting to sell offline PWAs on a one-off sale
format that they can easily wrap their app bundle in

------
jedberg
I'm on Safari and I clicked through to the HN app, and was basically presented
with a blank page with some headings:

[https://imgur.com/a/jqUw5Gl](https://imgur.com/a/jqUw5Gl)

I assume this isn't what it should look like.

Sorry about the bug report here, I couldn't find any contact link.

~~~
robarr
You have to launch it pressing the free button.

------
joelellis
Hi, I've always loved these PWA stores. I just updated the [https://offline-
dino-game.firebaseapp.com/](https://offline-dino-game.firebaseapp.com/) PWA
with the ability to save your highscore to localstorage! Took me long
enough...

------
johnny_reilly
I love PWAs. I'd be really curious to know if anyone could point to some good
examples of PWAs doing biometric authentication using facial recognition /
fingerprint.

I don't actually know if it's possible using standard APIs that work on iPhone
and Android

~~~
simonmales
I played with this when it game out.

At least the demo worked.

[https://webauthndemo.appspot.com/](https://webauthndemo.appspot.com/)

------
MegaLeon
I have been wondering, since PWA are sandboxed and all, would it be possible
to save a "snapshot" of it and be able to run it even if the original
website/app went offline?

~~~
RupertWiser
That’s left entirely to the developer to decide. You can intercept your
network requests with a service worker and decide what to do from there [1].

[1] [https://livebook.manning.com/book/progressive-web-
apps/chapt...](https://livebook.manning.com/book/progressive-web-
apps/chapter-4/2)

------
annajamey
That is great to read this news online. We can not go anywhere now as
COVID-19. So many people are surging dating game, especially apps, such as
Tinder, Bumble, Yumi and Meetme.

------
gorgoiler
For launch, it would be good to hide unfinished apps.

The hn app is fast and slick, for example, but it doesn’t have comment
collapse which is a major omission.

------
scriptstar
Nice interface. What stack did you use to build your site? Any links to your
repository, please? Many thanks.

------
tyingq
Very nice. Is there any automated validation that submissions are truly "PWA",
work offline, etc?

~~~
mrcoffee4u
checkout Lighthouse, its build into the Chrome dev tools

------
_Chief
Any reason Github OAuth needs permissions like Resources and Actions for
login?

------
RyanShook
I held out hope for PWAs for so long but I think React Native has won.

~~~
paxys
No one has "won". The vast majority of phone apps are still written using
native code and frameworks, and that will be the case for the foreseeable
future.

~~~
smbullet
PWA's aren't for developers with the time and resources to build native apps.
It's for web developers who want to improve the mobile experience on their
sites.

~~~
esprehn
Twitter, Instagram, and TikTok all have PWAs, plus many more well funded
businesses.

------
aabbcc1241
Like this demo. Btw, PWA can still contain purchases or ads

------
sdan
Played the dino game, reminds me of elementary school.

Pretty neat!

~~~
mattpearl
glad you enjoyed the ad free gaming experience!

------
kgraves
How is the push notification story with PWA’s?

~~~
mattpearl
On android and desktop notifications work well. We use push notifications to
inform users when their PWA is approved.

IOS it is still not supported yet but should be soon

------
hising
Great work. Found some gems there.

------
toohotatopic
Do you have categories?

------
rlv-dan
Does not work in Pale Moon browser (blank screen, JS errors)

~~~
phoenixdblack
Thats pretty unsurprising seeing as Pale Moon is not on-par with the standards
and actively trying to not keep up, but instead seem to focus on keep support
with legacy tech Mozilla removed quite a while ago.

Also they actively disabled service workers, the very tech that enables PWAs
in the first place

------
tylordurden
site not opening in the edge browser.

------
rileytg
what are your thoughts on recent news apple is removing functionality
important to PWAs?

~~~
mattpearl
apple is lagging behind on PWA support but PWA's are definitely coming either
way. the reason why apple is lagging on support is because it will take a
significant hit on their app store revenues as PWA's remove having to go throw
third parties such as apple

~~~
FridgeSeal
Why would I use a PWA over a native so if I had the choice though?

~~~
paxys
Well if the PWA experience is good enough then some developers aren't going to
list their apps in the app store at all so they can bypass Apple's revenue
cut. PWAs also have less access in general and so are more secure/sandboxed.

~~~
scarface74
Most of the revenue made from app stores come from pay to win games (which
need native performance) or subscriptions that work across platforms. Many
major players that use subscription prices have abandoned Apple’s subscription
payments.

Second issue, what are the chances that I would trust some random website with
my credit card information?

------
fermienrico
This is further regression from UI consistency, with no supervision, now on
Desktop. Every javascript developer has their own way of doing UI, often a
hodgepodge of framework libraries mashed up to make it work.

IMO, the entire world has regressed into chaos when it comes to design and UI.
Democratic design choices and process is far inferior to dictatorial approach
we had going in 90's and into 2000's (See 98.css recently posted:
[https://news.ycombinator.com/item?id=22940564](https://news.ycombinator.com/item?id=22940564)).
Let everyone run loose and we all lose.

Yes, it was painful to develop applications using native UI elements but those
apps provide a fantastic, consistent UI experience.

In addition, the entire Javascript ecosystem is rotten with horrible bloat
built atop more bloat by many inexperienced software engineers - sorry, I
don't meant to insult anyone but this is a factual observation from my own
experience of developing on React and Angular. When a website that's serving
trivial content is hogging so much CPU, it is time to refactor everything. It
is actually time to refactor what we see as a modern browser.

~~~
jamil7
> Yes, it was painful to develop applications using native UI

I actually think it’s getting easier. Android and iOS are both offering quick,
modern ways of building UIs with there upcoming UI frameworks thats IMO far
less work than the web where things have to often be built from scratch or
from some third party that will abandon it.

~~~
oaiey
I think the issue is the following: In the 90s there was exactly two vendors
with reasonable user base and design philosophies (Microsoft and Apple). And
even they had a similar behavior.

With the advent of web application we ignored it for a while (it is just a
window with some strange stuff in it). However, with the mobile platforms
(Android, iOS), bootstrap framework and the rise of strict user interface
guideline by mega companies (like Google Material Design), the number of UX
styles literally exploded. I try to enumerate them, but the web is full of
variants.

As a dream, we should consolidate to device factors: Desktop, Mobile, Watch
and Interactive. But Apple, Microsoft and Google are not on the same page here
;) If they would, magic could happen.

~~~
fermienrico
Thank you for articulating this better than I can. You've nailed the crux of
my concerns.

