-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Documentation improvements 2020Q3 #5113
Comments
@achrinza, would like to get your inputs on this. Thanks. |
I think this is a great idea, and would possibly help users better find the information they're looking for. It'll also make the responsibilities of each LoopBack package clearer. To add on, I think there's 2 main, overreaching user stories that we need the docs to cater towards:
So it may be a good idea to separate the docs as such. To make it even clearer, the Overview page should show the users these 2 options and redirect them to the correct sections of the docs. Both of these user stories want to reap some common benefits of LoopBack 4:
These separate docs may have an overlap of information, but they would cater more specifically towards their user story. For example, for the 2nd user story, the docs would be grouped based on the individual Node.js packages, with examples that can be used in isolation without the other LoopBack packages. As another discussion point: I'm wondering if we should create a separate sidebar for the 2nd user story, as the current sidebar is quite cluttered as-is. |
In the discussion with @raymondfeng and @bajtos, @raymondfeng also suggested to look in the different personas and different stage of the application development cycle (development, testing, deployment). On that front, I was trying to capture the documentation pages that I might need to look up as a user when i'm trying to create my own app. Here is the working-in-progress version: https://github.com/dhmlau/learning-loopback/blob/master/loopback-for-beginners.md. I agree that our current sidebar is already quite cluttered. I'm thinking whether it's better to have separate "user/developer guide", "deployment guide", etc, would be a good solution. |
Thanks for the link @dhmlau, I'll feedback where possible. Just throwing it into the discussion - I think it may help new users greatly if we can break down the docs by the lifecycle of a LoopBack application:
Right now, our docs are leaning heavily towards the "Developing" part of the lifecycle, and the rest (especially testing) are more of an afterthought. By creating these well-defined sections in the docs, we can achieve 2 things:
These sections can be repeated for the package-specific docs too so that they can benefit from the same segmentation. |
Quoting from #5104 (comment):
If we can create an "Understanding" section, we can have an opportunity to tell users a story on the different core components of LoopBack 4 and their purpose, without needing to go into details of the implementation. Think of it like a low-altitude flight of these concepts. This will allow users to build up their knowledge on the underlying fundamentals that LoopBack is built on top of. |
Has anyone seen the documentation of rxjs? https://rxjs-dev.firebaseapp.com/guide/overview is beautiful I think loopback is a beautiful framework but it fails in the documentation, and i never saw something like this before https://rxjs-dev.firebaseapp.com/operator-decision-tree so cool |
@achrinza, Your comment is spot on! I think the separation of "how to use it" and "let me explain how it works" is important. @mdbetancourt, thanks for the link. Let me take a closer look. I like the API list: https://rxjs-dev.firebaseapp.com/api. :) |
Not too sure if it's out-of-scope, but I think it's worth mentioning for reference (since we're doing a rather major docs refactoring): We may benefit from redesigning the architecture from Jekyll to Gatsby.js. Here's why:
There's some downsides that I can see:
|
@achrinza On my part i recommend:
|
Great discussion 👏 Let me add few more thoughts.
As part of thinking about these two stories, I think it's important to identify different ways how developers are going to discover LoopBack packages and features. For the first story, the user is already interested in LoopBack 4, so I would expect they start looking in our documentation. For the second story, many users won't be aware of LoopBack at all, they will be searching the internet (perhaps npmjs.org) for a solution to their problem. Quite often, they will not care if a package like I think we should create a new microsite for each package that's intended to be used outside of LoopBack. When I say microsite, I don't necessarily mean a full web site like https://loopback.io. A microsite can have different forms, depending on how much docs we need to write.
Regarding switching from Jekyll to something else: we have already explored migration to VuePress in the past - see strongloop/v4.loopback.io#45, but decided to keep using Jekyll. I am often frustrated by Jekyll's long build times, it would be great to find a faster tool. It would be even better if the tool was able to source the doc files from different GitHub repositories and the npmjs.org registry, so that we don't have to run a CI/CD job to unpack every new version of Having said that, such change looks like a non-trivial project to me, I don't know if it is the right task to spend our precious time now 🤷 |
In the past days, I was thinking quite a bit about our documentation and opened two issues to discuss how to overhaul our documentation structure for better, to give it an overarching vision and a strategy to follow.
Please let me know what you think! |
In my opinion, the documentation problem is caused by what our user think LoopBack is, and what it actually is. My take on it - #5551. |
Closing as done with the Q3 scope. |
We'd like to use this issue to capture how we can improve documentation.
From the discussion with @raymondfeng and @bajtos:
Adding new documentation pages
Reorganizing the documentation to make content easier to find
@loopback/openapi-v3
from docs, examples and CLI templates Hide@loopback/openapi-v3
from docs, examples and CLI templates #5692Adopt the four-quandrant documentation system
Related: #4717
The text was updated successfully, but these errors were encountered: