Automated documentation of your Meltano project.
Note: This extention is a work in progress. We welcome you to try it out, and to submit issues or PR's with suggestions and improvements.
- At the
builder-initedstage of Sphinx execution,sphinx-meltanois called. sphinx-meltanodoes the work to evaluate your Meltano project, pulling out plugins and settings into JSON formatted documents readable by the relevant Directives added by the plugin (e.g. theMeltanoExtractordirective that renders an extractor plugin).- JSON representations of your Meltano objects' docs, together with
.rstfiles containing the Meltano directives for reading and rendering those JSON objects, are placed in ameltanodir of your docs Source dir and are available to Sphinx as if it were hand-written. You are of course able to hand-write docs using the Meltano directives advertised bysphinx-meltano, however allowing the plugin to generate them is far easier! Themeltanosource folder is completely managed bysphinx-meltano(deleted and recreated on each run) and should not be checked into source control. - After the build stage Sphinx continues as with regular docs, reading and rendering each docs file. This means you can mix regular documentation (including in Markdown with the
MySTplugin) in addition to the auto-generated docs fromsphinx-meltano.
In future, the first build stage may be replaced with a parse stage, consuming a pre-built manifest from the Meltano CLI.
This will improve the performance of sphinx-meltano when building docs and also remove direct dependence on the meltano python package and its internals for sourcing project information.
- Here are the schemas from the relevant objects/plugins.
- Here are some docs on creating directives.
- Here is an example
imagedirective. - Here are some available directives from Docutils.
More thoughts: