-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Docs: Configuration file how-to guide #10301
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
Conversation
We had a conversation around the configuration file being not not correct, I opened up #10302 |
Pausing so Manuel can create a bulleted list explaining what the requirements actually are.
I put up #10303 to update the wrongly tagged required fields. We decided that it would be best to call these three fields required:
|
To add a little more complexity here, when using |
Thinking a little more about this, it seems users will benefit a lot from having "template use cases" defined with a working YAML example together:
This will probably allow people to just copy and paste these config files to use in their project and make some minor adjustments (probably file paths) to make them work on their projects. |
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.
Great initiative @nikblanchet 🥇
I could see the goal of the how-to as being able to go from "not having a config file" to "having a minimal config file and being ready to read the reference" - I think that reflects the intro of your PR description?
I like the narrative voice! But yeah, I guess narrating too much will quickly move the scope of the article into explanation, which Diátaxis has a few words to say about :)
I'll try to provide 3 example configuration files and push them into this branch for everyone to review? I'll leave it up to you to include them, but I think the tabbed interface will work really well 😇
@nikblanchet I was wondering if you are still around? I would like to propose to the core team to move forward with this initiative very soon in relation to #10342. Since #10356, we added example code for a .readthedocs.yaml file to the Import Wizard. I would like that code to be maintained in a single location so we maintain all our example code in a single location. |
@nikblanchet, I hope it's okay that I try to see if I can get your work here merged by making some changes here 👍 |
Co-authored-by: Anthony <[email protected]>
…cs/configuration-file-howto
I'd lost track of this project. Mind if I take this up this upcoming weekend? |
That sounds great @nikblanchet 👍 I'll do a bit more work on the PR and perhaps it will be ready for review. But we don't have to rush it - it would be nice to wrap it up on Monday though, since we release on Tuesdays. Not sure if you noticed, but we are making the configuration file mandatory from September, so the how-to became a lot more valuable: https://blog.readthedocs.com/migrate-configuration-v2/ |
…ggestions from @benjaoming Co-authored-by: Anthony <[email protected]>
WRT these two items, I'd like to have a decision + solution for how to move forward.
To give some context:
So I added a basic template with an I don't think we should remove Again, leaving out this part in order to prioritize making the how-to look fast or easy for Sphinx and MkDocs users is likely a disservice to ourselves. We should include build.commands in a way that isn't discouraging or confusing for Sphinx/MkDocs users, which I think we are already partly solving with the tabbed interface and the section's heading. But I hope to hear some suggestions on improving this part!! Edit: So one of the ways to make this look better, could be to have an example where an actual custom tool is installed and run. Like docusaurus. Edit 2: Ah that was already @humitos's point => #10301 (comment) - yes, I think we are improving the example by showing how to install and run a real documentation tool. Edit 3: We might have a version of the how to in the future that for instance lists Sphinx, MkDocs, Pelican and Docusaurus. And below the tabbed interface there is a link like "Don't see your favorite documentation tool here? Read our guide on setting up a configuration file for a custom documentation tool". |
…Remove section about custom commands and instead have it hidden in a tab
…cs/configuration-file-howto
Well, so I absolutely do want to eventually cover many tools here, or at least a subset of the tools and cover all the tools we can in the application version of this UI. However, my opinion has not changed on If we are prioritizing the override of |
Hi @agjohnson ! I was just pulling in the branch from another computer. After pulling it in and building, the tabs shown in the screenshot didn't show for me locally. I had to run The current state of the docs are supposed to eliminate expert level features, so maybe it's because you'd like a |
I still see I am calling
I agree it's still helpful to point users towards an example like the Docusaurus example, but not in a guide recommended for novice users. I would sooner drop these from the tabbed interface until we have something like |
I had this in an early comment...
It would be great if you can suggest a way to include people who read this guide and want to use a different documentation tool 👍 I apologize in advance for potentially misunderstanding something around the prioritization of custom tools (See also: "Generalize build process patterns to support more tools"). More specifically that I thought having an easy-to-copy-paste template for Docusaurus (or another tool) aligned very very well with high-level priorities. |
I'm suggesting we wait on this until the tool is somewhat supported. We already have information on unsupported tools in our build customization docs if the user chooses, but it's under a warning that Right now, we're solving a different problem with this page: we don't have any introductory content on our configuration file for novice users. It's fine to keep the scope of this page to the tools we currently support. Having examples for Sphinx and Mkdocs is a 100% improvement over what we had. We'll add more as we go. Footnotes
|
Alright, those guides have been removed 👍 |
I've moved further examples off to an issue we can remember to come back to when we're ready: I'm merging this for now, as it's close and all feedback looks to be addressed now. Thanks for the help everyone! |
Awesome, I look forward to accommodating all the new build features in future work. Thanks for explaining the position 👍 |
Also big thanks to @nikblanchet for the initiative 👍 It went a bit hectic at the end, but the result is super positive -- if you have any additional feedback please do add it, and we can still pick up on matters. Minor note: We got sphinx-copybutton added, that was really nice, I've seen it play out on different documentation pages and it Just Works® :) |
This is a how-to guide covering how to create and set up the configuration file. The goal is a narrative document explaining to both the Markos and Riika personae…
.readthedocs.yaml
fileIt will link to the full configuration file reference page for those who want to go into more detail.
📚 Documentation previews 📚
docs
): https://docs--10301.org.readthedocs.build/en/10301/dev
): https://dev--10301.org.readthedocs.build/en/10301/