Package: divio-docs-gen
Divio Docs GeneratorAutomatically collect, aggregate and structure all yourdivio-style documentationinto a tree of .md files./{reponame}
    /tutorials
    /how_to_guides
    /explanation
    /referenceOn a basic level, this repo will only need a list of git url's!Any input structure: this script will scan your entire repository for .md filesIf you have a how-to section in your README, that'll get extracted and put in the right spotOr, if you have an how-to.md file, it'll get added in its entirety!Any output structure: this script generates a simple markdown tree. Nothing proprietary, no vendor-lockin. It can be generated from GitHub Actions and put into a Jekyll pages site just as easily as it is run from a Raspberry Pi and used to render the contents of an Ember application.All you have to do is simply name your headers and/or files after the divio sections (tutorials,how_to_guides,explanation,reference). (Oh, don't worry, the search is done through a case insensitive regex. Add more words as you please)Getting-Started / tutorialInstall the package (python3 -m pip install divio_docs_gen)And then either...Setup the docs.conf file (See thereference belowand/or thedocs.conf.examplefile)Use throught the cli (python3 -m divio_docs_gen --help)How-ToInstall from pippython3-mpipinstalldivio_docs_genClone & run scripts locallygitclonehttps://github.com/Denperidge-Redpencil/divio-docs-gen.gitcddivio-docs-gen
python3-mpipinstall-rrequirements.txt
python3-msrc.divio_docs_genBuild & install package locallygitclonehttps://github.com/Denperidge-Redpencil/divio-docs-gen.gitcddivio-docs-gen/
python3-mpipinstall--upgradebuildsetuptools
python3-mbuild&&python3-mpipinstall--force-reinstall./dist/*.whlNote: other Python versions can be used!DiscussionsThe Divio structure is built upon splitting your documentation into 4 types of documentations.. In this repository they're referred to as sections.If you want to know more about the design principles of this project, feel free to check out my writeuphere!Further expansion could be done to this project. For example, a structure like the following.../{reponame}
    /0.0.1
        /tutorials
        /how_to_guides
        /explanation
        /reference... should not be impossible to achieve with some tweaking!Referencedocs.conf[DEFAULT] sectionThis section is on the top of the file, and defines options that affect the entire configurationParameterFunctionalityDefaultOwner(string) Defines which user or org has to be checked for the repository in case its Path does not explicitly define an ownerGenerateNav(boolean) Whether to add internal navigation to the top of each generated file. Defaults toFalseDocsBasedirWhat folder to output the docs in. Defaults todocs/TutorialsSets the output folder name for tutorials. Defaults totutorialshow_to_guidesSets the output folder name for how-to guides. Defaults tohow_to_guidesexplanationSets the output folder name for explanation. Defaults toexplanationreferenceSets the output folder name for reference. Defaults toreference[repo] sectionYou can add as many of these as you want. Each one represents a repo you want parsed. You can give any name to[the-section-header], but you should probably avoid duplicates. If no repo sections are defined but you've defined DefaultOwner, all repos of that user or organisation will be parsed.ParameterFunctionalityPath(string) Defines which repository to parseMove(string) Files in the repository that should be copied to a specific section. Syntax:docs/file.md/section_id//file2.md/section_id/output_filenameIgnore(string) Files in the repository that should be ignored. Syntax:file.md//file2.mdExample Ignore:Ignore=building-a-template.md//why-semantic-microservices.mdExample Move:Move=documentation.md/referenceNote: forMoveandIgnoreyou can choose to be more specific by writingsub/folder/filename.md. The check is aprovided_path in full_filepath, sosub/folder/filename.mdwill apply toeven/further/sub/folder/filename.md.SynonymsFor ease of use and freedom of implementation, every section has synonyms.SectionSynonymsTutorialsGetting startedHow-to GuidesHow-To, Guide, UsageExplanationDiscussion, background materialReferenceTechnical