-
Notifications
You must be signed in to change notification settings - Fork 453
Rearrange docs to make the content more discoverable for newcomers #12612
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
base: main
Are you sure you want to change the base?
Conversation
|
One side-effect of flattening |
|
I also noticed that re-running |
|
I would advise against moving the tutorials to top level. One of the problems of the current dune documentation is that it is partially moved to a structure reflecting the diataxis framework. It is in a transient state where some pages have been reworked, but some are not... Part of the doc are not clearly separated. Moving the tutorial top level increase this unclear separation of purposes and goes against the framework we were trying to follow to make the doc better (at least when it was improved by @ emillon)... For the separation, I would say that "How to use Dune's Command Line Interface" should be rewritten and moved to tutorial. "First Step with Dune" should also go to tutorials/. "Package Management With Dune" should go back to tutorial. My point is that if you want to know how to do things, the reflex is to go to tutorials. Of course, it should be linked from the first page to make it clear about the intention. Also, the "FAQ" could be extracted from "Miscellaneous" to make it more visible (in general, the "Miscellaneous" top level should disappear). The renaming makes it definitely clearer about the initiative 👌🏻 The fact that the overview is the first page when you arrive definitely makes it clearer 👍🏻 |
7e08757 to
6f35292
Compare
Moving the most important getting started kind of documentation into a visible place on the sidebar is not at odds with diataxis. Diataxis doesn't mean to impose that the information architecture (table of contents) must squeeze documents into those four rigid buckets - all that diataxis suggests is that it is good to have a clear understanding of what type of document one is writing, and to stick to the principles of that category of document (within that document). When surveying people for the OCaml.org documentation area revamp, we asked for pages with great documentation and a major pattern we found across all these was that documentation was structured from top to bottom in increasing order of difficulty, placing the most important and useful concepts first.
Yes, that would be great, however, I think it's not a priority to rewrite anything right now. The PR only attempts to grab the lowest-hanging fruit in terms of the experience of a complete newcomer arriving on the docs having a higher chance to find the content that helps them get started.
Agreed. |
6f35292 to
f299dd0
Compare
… its content for newcomers Signed-off-by: Sabine Schmaltz <[email protected]>
Signed-off-by: Sabine Schmaltz <[email protected]>
…actical Examples Signed-off-by: Sabine Schmaltz <[email protected]>
…table of contentS Signed-off-by: Sabine Schmaltz <[email protected]>
Signed-off-by: Sabine Schmaltz <[email protected]>
f299dd0 to
076f4b8
Compare
| Core Concepts | ||
| ================================= |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think rst (make doc) will complain about non-matching underlines.
Improve Documentation Structure and Navigation
This PR restructures the Dune documentation to make it more intuitive and easier to navigate, following better information architecture principles.
Changes
Documentation Reorganization:
Renamed files for clarity:
usage.rst→command-line-interface.rst- More descriptive title that clearly indicates the contentquick-start.rst→practical-examples.rst- Better reflects the actual contentCreated new
core-conceptsdirectory:explanation/mental-model.rst→core-concepts/mental-model.rstexplanation/scopes.rst→core-concepts/scopes.rstcore-concepts/terminology.rstwith comprehensive glossary of Dune terms (I have no idea why this was inoverview.rst)core-concepts/index.rstas a landing pageFlattened tutorial structure:
tutorials/developing-with-dune/*→first-steps-with-dune/*(8 files)tutorials/dune-package-management/*→dune-package-management/*(5 files)Added URL redirects to preserve backlinks:
sphinx-reredirectsdependency to handle URL redirectsconf.pyto maintain backward compatibility for all renamed/moved pagesRearranged main table of contents to have a progression of content for newcomers
Motivation
The previous documentation structure had several issues:
explanation/directory was ambiguous in purpose (covering both basic ideas that beginners would benefit from understanding, as well as ideas that are more relevant to contributors to the Dune project)tutorials/hierarchy added unnecessary nesting (which made it difficult to see the most important tutorials right away, requiring people to click intotutorialsto get started)Follow-Up Tasks