/docToolchain

a Gradle based AsciiDoc Toolchain for Software Architecture Documentation

Primary LanguageGroovyMIT LicenseMIT

What this fork add to ocToolchain

Asciidoc Features added:

  • Add a read SCM functionality, read and set some variable from SCM like branch, tag, commit, date (/scripts/AsciiDocBasics.gradle, /scripts/readScm.gradle, build.gradle)

  • Update asciidoctor version and asciidoctor PDF version (/scripts/AsciiDocBasics.gradle)

  • Make PDF behavor the same concerning imagesDir folders (/scripts/AsciiDocBasics.gradle)

  • Add asciidoctorj-chart plugin (/scripts/AsciiDocBasics.gradle)

Confluence feature added:

  • Change the page hash storage to be compatible with more confluence versions (/scripts/asciidoc2confluence.groovy)

    Many Confluence Server mode installation reject the attribute style= on p tag. So we change it to an always work method: use ac:parameter instead

  • Simply add the support of asciidoc collapsible (/scripts/asciidoc2confluence.groovy)

    .Click me
    [%collapsible]
    ====
    Example block turns into collapsible summary/details with title.
    ====
  • For Arc42 help detection if another child name .content is inside the main foldable .content (like have admonition inside) the child is also wrongly made collapsable (/scripts/asciidoc2confluence.groovy)

  • Add auto detection of 'preambleTitle' : try <title> (html5) then <info> (docbook) then first <h1> (html5 with showtitle disable) then 'arc42' (/scripts/asciidoc2confluence.groovy)

  • Add default value for confluence.input parameter : "build/html5/index.html" (/scripts/asciidoc2confluence.groovy)

  • Add a convenience asciidoc attribute publish-confluence for checking if a publication to confluence have been asked

  • Add the posibility to shift confluence sections up by one. Confluence section level 1 is representated by <h1> instead of <h2> for a backend-html (as <h1> is the document title). (/scripts/asciidoc2confluence.groovy)

    confluence = [
        // Shift section level up by one for match confluence expectation
        // (level 1 is <h1>, level 2 is <h2>)
        shiftConfluenceSection: true,
    ]

docToolchain

doctoolchain

Note

Corona/Covid19 is taking its toll. Time is short in these times and issues are not worked on. That is why I (rdmueller) have just introduced sponsored issues with higher priority. The label should help to explain why some issues will be preferred over others. If you want to sponsor an issue, just use the sponsor link on top of this page.

Important

If you have used docToolchain in the past, please be aware that the master branch is undergoing some changes.

If you are looking for a fresh version and are willing to accept changes in the configuration, this ng branch is the right thing for you.

If you are looking for what you are used to, then download the V1.0.0 release

Build Status Backers on Open Collective Sponsors on Open Collective

create awesome docs!

docToolchain is an implementation of the docs-as-code approach for software architecture. The basis of docToolchain is the philosophy that software documentation should be treated in the same way as code together with the arc42 template for software architecture.

Overview2

Contributors

This project exists thanks to all the people who contribute!

contributors

See also the list of contributors from the docs.

Each contribution is highly valuable and appreciated, no matter how big it is - there are no small contributions. Even just fixing a typo or starring the project helps to promote it.

I decided to give people and companies a chance to support this project. This is done through https://opencollective.com - the same service which Asciidoctor uses.

Companies who use docToolchain

docToolchain is still one of the smaller open source projects, but some companies already fully embrace the docs-as-code approach through docToolchain. If your company uses docToolchain, then feel free to add your company’s logo through a pull request. Please state in the PR that we are allowed to display the logo within all projects websites and documentation.

TomTom

Deutsche Bahn - DB Systel

codcentric

Backers

Thank you to all our backers!

Become a Backer

Sponsors

Support us by becoming a sponsor. Your logo will show up here with a link to your website.

Sponsor

History of this project

I just found an older tweet which reminded me of the roots and beginning of this project. It all began with two important parts. A script called asciidoc2confluence and some scripts to export diagrams from enterprise architect.

The first one is linked in the tweet above and the first commit dates back to mid of 2015. Since then, many contributors have joined! Thank for all of your contributions!