The navigation for basically all output except for global classes is currently quite hard to understand. There are big gaps and it is not fulfilling its purpose as an easier entry point than the source code.
This is a meta-task of sorts since the solution is TBD, although there will be various small straight-forward improvements we can make for sure that might suffice in resolving the task as well.
Status quo
The navigation is organised in three ways: Namespaces, Classes, Modules.
Namespaces:
- I'm not sure what this is currently. I would expect classes within a namespace to show up, but they don't. Using Parsoid-JS as an example many of the namespace pages are empty with no way to discover the relevant classes it contains.
- The menu is missing hierarchy. Only the last part is shown, no sub menus or full names. This is essential to have.
Classes:
- The menu is missing hierarchy. Only the last part is shown, no sub menus or full names. This is essential to have.
Modules:
- This contains groups of functions and classes that are accessed primarily through require and thus mainly named after their file path.
- Local functions are documented directly on the module page, similar to how one would for methods of a singleton class page. The internal qualified name for these functions is module:mymodule~myFunction which makes sense.
- Local classes are given a small placeholder that links to a page under the Classes navigation. The internal qualified name for these is module:mymodule~MyClass which makes sense.