google / WebFundamentals

Former git repo for WebFundamentals on developers.google.com
Apache License 2.0
13.86k stars 2.57k forks source link

[EN] Feedback for: /web/progressive-web-apps?hl=en - Composition over generalization #2923

Open wernight opened 8 years ago

wernight commented 8 years ago

As a technical person, I'd want to understand what it technically means to be a PWA.

For example AJAX is just HTML + Javascript + XML[/Json]. It is just a normal page using some browser features. Question I have when first looking at the home page: Is PWA like that? How can a dev make use of some or more of PWA features on an existing website?

It's good to have a skeleton to start a new app from scratch, but I feel it's even more useful to have ways to extend any existing page so as to make use of PWA features. It means that any framework, existing project, and knowledge can simply be augmented instead of having to find ways to merge things. It's similar to object oriented constructs: Composition is easier and more powerful in general, compared to generalization especially with multiple parents.

For example the off-line page could contain an overview of what needs to be added on a page for it to work (and complement with the existing minimal demo).

It's looks like it has been designed mostly around starting from scratch; I hope there are also many features that don't require that. Last but not least, I'd like to remind that Polymer was pushed as a start from scratch framework but many people just wanted Material style, so only after years we provided various ways to just have Material. I'm saying that only because it looks like there is a mix of "general knowledge" mixed with PWA features, for example on https://developers.google.com/web/fundamentals/design-and-ui/animations/?hl=en which is in the sidepane of PWA feature demo.

petele commented 7 years ago

Great points, I'll take a look at how to integrate these in future updates.

wernight commented 7 years ago

I've created an article that does that, for your reference: https://beroux.com/english/articles/progressive-web-apps/