interpeer/interpeer.org
2
0
Fork
You've already forked interpeer.org
0

Find a documentation engine #1

Open
opened 2020年02月05日 10:50:31 +01:00 by jfinkhaeuser · 8 comments

The plan is to publish documentation of different packages either on subdomains of interpeer.io, or within URL paths they "own".

Since the main website is static HTML generated by pelican, it would be nice to find a python based documentation engine that generates the documentation. Maybe Sphinx. We'll see.

The plan is to publish documentation of different packages either on subdomains of interpeer.io, or within URL paths they "own". Since the main website is static HTML generated by pelican, it would be nice to find a python based documentation engine that generates the documentation. Maybe Sphinx. We'll see.
Author
Owner
Copy link

mentioned in issue #2

mentioned in issue #2
Author
Owner
Copy link

One approach:

  • Document in Doxygen syntax or Sphinx syntax, depending on the sources.
  • Use Breathe for converting from Doxygen to Sphinx.
  • Then use Sphinx to generate the document(s).
One approach: - Document in [Doxygen](http://doxygen.nl/) syntax or [Sphinx](https://www.sphinx-doc.org/en/stable/) syntax, depending on the sources. - Use [Breathe](https://breathe.readthedocs.io/en/latest/) for converting from Doxygen to Sphinx. - Then use Sphinx to generate the document(s).
Author
Owner
Copy link

Meson and GStreamer both use hotdoc. It has extensions for scanning Python or C source files, but it's unclear whether the latter works for C++.

Meson and GStreamer both use [hotdoc](https://github.com/hotdoc/hotdoc). It has extensions for scanning Python or C source files, but it's unclear whether the latter works for C++.
Author
Owner
Copy link

Slate creates nice documentation, but it seems to be for web APIs and doesn't extract docs from programming language files.

[Slate](https://github.com/slatedocs/slate) creates nice documentation, but it seems to be for web APIs and doesn't extract docs from programming language files.
Author
Owner
Copy link

Similar to Slate is Hugo.

Similar to Slate is [Hugo](https://gohugo.io/).
Author
Owner
Copy link
https://www.writethedocs.org/guide/tools/sphinx-themes/
Author
Owner
Copy link

For the time being, we're using Hugo for the site, and therefore also for the documentation sub-section. But the workflow is not very satisfying; extracting the Hugo specific metadata from e.g. markdown repos is far from automatic.

I suspect it'll come down to creating a site similar to specs.interpeer.io which is docs.interpeer.io, and which will contain generated docs. Then whatever is at the main site is just an introduction similar to how it is now.

For the time being, we're using Hugo for the site, and therefore also for the documentation sub-section. But the workflow is not very satisfying; extracting the Hugo specific metadata from e.g. markdown repos is far from automatic. I suspect it'll come down to creating a site similar to specs.interpeer.io which is docs.interpeer.io, and which will contain generated docs. Then whatever is at the main site is just an introduction similar to how it is now.
Author
Owner
Copy link

Looking into this more, it seems a possible pipeline is this:

  1. Use doxygen to extract API documentation and generate XML.
  2. Use asciidoxy to combine external and API documentation and generate plain asciidoc.
  3. Use asciidoctor, but with a shim (https://ratfactor.com/hugo-adoc-html5s), configured via a local script and setting the PATH appropriately.
  4. Use Hugo's support for asciidoc as an input format via asciidoctor.

It's a pretty convoluted pipeline, but it has some additional benefit in that the first step(s) can be done with the source repository as its input, leaving the XML file in the website repo. We can then use the remainder of the steps to generate the site, tweak the layout, etc.

Looking into this more, it seems a possible pipeline is this: 1. Use doxygen to extract API documentation and generate XML. 1. Use asciidoxy to combine external and API documentation and generate plain asciidoc. 1. Use asciidoctor, but with a shim (https://ratfactor.com/hugo-adoc-html5s), configured via a local script and setting the PATH appropriately. 1. Use Hugo's support for asciidoc as an input format via asciidoctor. It's a pretty convoluted pipeline, but it has some additional benefit in that the first step(s) can be done with the source repository as its input, leaving the XML file in the website repo. We can then use the remainder of the steps to generate the site, tweak the layout, etc.
Sign in to join this conversation.
No Branch/Tag specified
main
modularize
feature/redesign-2022-general-and-mobile-styling
redesign-2022
dco-contributing
No results found.
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
interpeer/interpeer.org#1
Reference in a new issue
interpeer/interpeer.org
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?