New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PROJECT] Revamp the Progressive Web Apps documentation #280
Comments
As part of this project, we might want to also focus on improving the storage docs too: mdn/content#23557 |
I've been thinking about this with the Divio docs system in mind. We don't often use this system on MDN because 80-90% of our stuff is reference, but it is a very useful model for thinking about doc structure, and is applicable in this case. The site explains it well, but to summarise, it says that docs can be divided into four parts:
We don't always have to have all these components, but it's a useful tool to consider which parts we do want, to be conscious about which ones we exclude, and to understand which of the docs we're creating fall into which category. The system also suggests that it's a good idea to avoid docs that blur categories - so for example reference docs should not go deeply into concepts. For example, I think it's a weakness in our docs that pages like https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Offline_Service_workers mix tutorial and explanation. With tutorials people just want to see results. So in that context, we might think:
Like I say we don't need everything here, this is just a framework. I had a bit of a look through your list of actions, and here are a few notes.
Yes, agreed. This seems partly like a consequence of these docs blurring "tutorial" and "explanation".
I expect that for now we would need a dedicated PWA sidebar. The current sidebar here is a generic one that lists pages in alphabetical order, while of course the tutorial is curated order.
If we want this tutorial to be "building a PWA step-by-step" then next/previous is helpful to emphasise that this is a strongly linked set of pages. It's also pretty common practice in MDN to do this (see also Learn, and tutorials like https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Tutorial).
I'm not sure about this. I think a landing page that shows the scope and organization of the documentation is helpful. It can have a short intro but should mostly be about providing an overview of the docs. I do think it could provide more context than it currently does (for example, explaining which part is a walkthrough of writing a PWA), or it isn't adding any benefit over a sidebar.
This makes me think we have 2 audiences here: native app developers and web developers, and the story about benefits is different for each. I mean, if I'm right, the "single codebase" benefit is for people coming from a native app world, right? So I think it might be worth being explicit about these two audiences.
A couple of thoughts here. First, the performance page is (again) a mix of doc types. It's primarily part of our "step by step build a PWA" tutorial but includes, again, conceptual stuff on performance. I wonder how much of the conceptual stuff is better covered in general performance docs as it doesn't seem PWA-specific? Second, perhaps the things you have listed here would be good how to topics?
Yes, definitely! |
Will, Estelle, and I met today and discussed about this project, here are some notes, on top of what Estelle already mentioned above: Sidebar The PWA docs right now use a generic sidebar. Tutorial Idea to create 3 little apps for the tutorials:
Installation docs Regarding the user documentation about installing PWAs: we should mention this, but it's different in each browser, so perhaps we should link to each vendor's docs. Ref docs We should make sure all reference docs are already on MDN. There are 3 missing manifest members, but there may be other missing things too. Updating the list of tasks based on this. It would be good to also write a reference page that gives links to all reference pages for PWA. Like a cheatsheet. Table of content We agreed to start by taking a stab at a new ToC, using the Divio approach mentioned by Will above. Tutorials: super practical, not conceptual. I want to do this thing, here's how. |
PWA sidebar -> mdn/yari#8238 |
FYI: maybe you would want to look through the following issues |
Thanks @Josh-Cena. The first and third issues in your list are now closed. Thanks for raising awareness about these. |
Because mdn/yari#9192 landed, this project is officially complete! |
Task list
Update content
ToC
Generalize content that's too specific
Best practices and benefits
Demo app
Reference
Proposal
The PWA documentation mostly lives under the
/Web/Progressive_web_apps
area, but a lot of the features and APIs used by PWAs are documented in other areas too.I think the PWA docs are due for an update as they are starting to show signs of aging. My understanding is that it was created a long time ago by different people, and hasn't necessarily been updated since.
Some of the content appears outdated, and some important things are missing.
The PWA technologies are in constant evolution, and adoption of PWA to build apps for mobile and desktop is rapidly increasing.
As part of the OWD steering committee, I mentioned this idea at the weekly SC meeting and people were receptive to the idea of revamping the docs. So I'm filing this proposal to get things started.
Below is the current table of content of the
/Web/Progressive_web_apps
area with some of my own comments:Additional information
For inspiration, here is a look into other PWA documentation websites.
learn.microsoft.com
The PWA docs on learn.microsoft.com are being updated at the moment. The following table of content is the new one:
and theme color
web.dev blog
web.dev/learn/pwa
Are you willing to support this work?
Yes, I can take an active role in leading/planning/writing docs.
Depends on
No response
The text was updated successfully, but these errors were encountered: