-
-
Notifications
You must be signed in to change notification settings - Fork 27
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
Add OpenAPI (swagger) docs to our documentation #239
Comments
This comment was marked as resolved.
This comment was marked as resolved.
Django REST Swagger |
@drakeredwind01 that's the same functionality that drf-spectacular provides. You have to be running the server to view it and it's also not integrated into the mkdocs site we have in ghpages. What we're hoping for is something like a mkdocs plugin that generates a page for mkdocs with the same information. |
Sphinx and the Missing Anchor Issue:Warnings for Broken Links: Sphinx excels at identifying broken links within your documentation. When an anchor (reference point within a document) no longer exists, Sphinx generates warnings during the build process. This proactive approach helps maintain accurate and up-to-date documentation, a crucial aspect for a complex project like the Linux kernel. Here's how Sphinx compares favorably to the listed options:mkdocs-swagger-ui-tag & 2. mkdocs-render-swagger-plugin: Sphinx can handle various content types beyond APIs, including text, code listings, and images – perfect for the diverse nature of the Linux kernel documentation. OpenAPI Docs: Sphinx allows tailoring the documentation layout, branding, and inclusion of additional content beyond the pure API specifications. BREAKDOWN
|
@drakeredwind01 Sphinx doesn't have the functionality to satisfy the main requirement in this issue which is to generate API docs. |
I think my comment didn't address the context of your topic. My comment was in the context of this issue's requirements: adding OpenAPI docs to our documentation. Your topic is a broader one that we've covered before in this project: documentation generators. Note that this project is currently using MkDocs and there's already pages written with MkDocs-specific markup. For historical context, we've compared documentation generator systems in the past, including Sphinx, Asciidoc, and MkDocs, weighed our needs and organization needs, and settled on MkDocs. I was the one wanting to adopt Sphinx at the time. I have an older documentation site set up here, with this page showing some of the UI enhancements it provides over Github markdown. This is our docs with similar enhancements in MkDocs (some of it still in PR). The organizational needs part was that hackforla needed to choose a system for all its projects, not just for peopledepot, and wanted to link them up in the future. So while Sphinx was slightly better for us as a python project, MkDoc was a much better choice for other projects. This is why I mentioned ease of integration as a dimension to compare. If it involves adding an entire documentation system or replacing our current one and converting all our existing documentation files to it, that's a big hurdle to integration. If it's an independent generator that just outputs a webpage into the gh-pages branch where the document is hosted, that might be a viable solution. This is why MkDocs plugins are more favored. I was thinking maybe there's some independent generator out there that could also work, but Sphinx is too big a change. To summarize why we're not going to move to Sphinx from MkDocs
|
@drakeredwind01 are you still working on this issue? Please provide update
|
Confirmed with @drakeredwind01 he's not working on this anymore, so unassigning him. |
After hearing about and really comparing them, I'm now convinced that We should try to have a |
@fyliu Given our stakeholder-informed decision to go for Redoc rather than Swagger, I think this issue needs to be revised - putting it into Questions/Review for now. |
Dependency
Overview
Since the project is not yet deployed, non-developers can't see the API docs that are generated on the fly by the backend. We need to generate and add that to our documentation so that everyone can view them.
Action Items
After Merge
Resources/Instructions
More details
To clarify the issue description, the project does generate API docs using
drf-spectacular
, but it's on the fly only when the server is running. The packages in resources will generate a static version and put it inside the mkdocs site so it becomes part of the documentation separate from the running server.The text was updated successfully, but these errors were encountered: