A GitHub Action that automatically generates & updates markdown content (like your README.md) from external or remote files.

Table of contents
Why markdown-autodocs
To make your repo more appealing and useful you need to provide example code snippets in your README.md. Manually copy and pasting each code snippet in their respective places in your README would be inefficient and time-consuming.
This problem can be solved using markdown-autodocs a GitHub Action that automatically generates & updates markdown content (like your README.md) from external or remote files. You need to add markers in your README.md that will tell markdown-autodocs where to insert the code snippet.
Features
  • Code block: Insert code snippet in your markdown file from external or remote files.
  • JSON to HTML table: Insert HTML Table in your markdown file by converting JSON file contents to HTML table.
  • Github Workflow Artifacts table: Insert the Github workflow artifacts table in your markdown file by getting the latest artifacts for a workflow run.
  • Examples
    CODE Block
    Get code from an external file or URL and insert it in your markdown.
    Options:
  • src: The relative path to the code to pull in, or the URL where the raw code lives
  • JSON to HTML table
    Get JSON contents from an external file and convert it into an HTML table and insert's it in your markdown.
    Options:
  • src: The relative path to the JSON file to pull in.
  • Github Workflow Artifacts table
    Get the list of the latest artifacts generated from a workflow run. Generates a workflow artifacts table consists of artifacts download and workflow URL in an HTML table and inserts it in your markdown file.
    Local usage without Github action
    Install markdown-autodocs CLI:
    npm i -g markdown-autodocs
    markdown-autodocs CLI usage:
    dineshsonachalam@macbook ~ % markdown-autodocs --help
    Usage: markdown-autodocs [options]
    
    Options:
      -o, --outputFilePath <outputFilePaths...>  Output file paths
      -c, --category <categories...>             code-block, json-to-html-table, workflow-artifact-table
      -r, --repo <type>                          Repo name
      -b, --branch <type>                        Branch name
      -a, --accessToken <type>                   Github Access token
      -h, --help                                 display help for command
  • Code block
  • markdown-autodocs -c code-block -o ./README.md
  • JSON to HTML table
  • markdown-autodocs -c json-to-html-table -o ./README.md
  • Github workflow artifacts table
  • markdown-autodocs -c workflow-artifact-table -o ./README.md -r $REPO -b $BRANCH -a $ACCESSTOKEN
    Usage
    Adding markdown-autodocs in your workflow
    Add the following step at the end of your job, after other steps that might add or change files.
    uses: dineshsonachalam/markdown-autodocs@v1.0.3
    Extended example with all possible options available for this Action
    - name: Markdown autodocs
    - uses: dineshsonachalam/markdown-autodocs@v1.0.3
      with:
        # Optional, defaults to author of the commit that triggered the run
        commit_author: Author <actions@github.com>
    
        # Optional, defaults to "actions@github.com"
        commit_user_email: actions@github.com
    
        # Optional, but recommended
        # Defaults to "Apply automatic changes"
        commit_message: Apply automatic changes
    
        # Optional branch name where commit should be pushed to.
        # Defaults to the current branch.
        branch: feature-123
    
        # Optional output file paths, defaults to '[./README.md]'.
        output_file_paths: '[./README.md]'
    
        # Categories to automatically sync or transform its contents in the markdown files.
        # Defaults to '[code-block,json-to-html-table,workflow-artifact-table]'
        categories: '[code-block,json-to-html-table,workflow-artifact-table]'
    🚀 Used By
    License

    28

    This website collects cookies to deliver better user experience

    A GitHub Action that automatically generates & updates markdown content (like your README.md) from external or remote files.