Skip to main content

A MkDocs plugin that is designed to automate the process of collecting documentation from multiple GitLab repositories and integrating it into the documentation of the current repository.

Project description

mkdocs_multisource_docs

The mkdocs_multisource_docs plugin is designed to automate the process of collecting documentation from multiple GitLab repositories and integrating it into the documentation of the current repository. This is particularly useful for projects that rely on documentation spread across multiple repositories, ensuring a unified and up-to-date documentation experience.

Key Features

  • Multi-repository documentation collection: automatically fetch and merge documentation from multiple GitLab repositories.
  • Undocumented image documentation generation: automatically generate documentation for images that lack descriptions.
  • Seamless integration: easily integrate with MkDocs to enhance your documentation workflow.

Quick Start

  1. Install the plugin:

    Install the plugin using pip:

    pip install mkdocs_multisource_docs
    
  2. Add the plugin to your mkdocs.yml:

    Include the plugin in your MkDocs configuration file and specify the path to the configuration file:

    plugins:
      - multisource-docs:
          multisource_config: "./application.json"
    
  3. Configure the application.json file:

    Create a configuration file (application.json) to specify the GitLab host, token, and repositories to fetch documentation from. See the configuration details below.

Configuration File Parameters

The application.json file is used to configure the plugin. Below is a table describing all the required parameters:

Parameter Description Example Value
GIT_HOST The GitLab host URL. "https://gitlab.example.com"
GIT_READ_TOKEN A GitLab access token with read permissions for the repositories. "glpat-xxxxxxxxxxxxxxxxxxxx"
DOCS_REPOSITORIES A list of repositories to fetch documentation from. See below for structure
EXCLUDE_IMAGES (Optional) A list of image filenames to exclude from documentation. ["image1.png", "image2.png"]

DOCS_REPOSITORIES Structure

The DOCS_REPOSITORIES parameter is a list of objects, each representing a repository. Each object has the following fields:

Field Description Example Value
name The name of the repository. "my-repo"
repo_id The ID of the repository. 12345
branch The branch of the repository to fetch documentation from. "main"

Example application.json

{
    "GIT_HOST": "https://gitlab.example.com",
    "GIT_READ_TOKEN": "glpat-xxxxxxxxxxxxxxxxxxxx",
    "DOCS_REPOSITORIES": [
        {
            "name": "my-repo-1",
            "repo_id": 12345,
            "branch": "main"
        },
        {
            "name": "my-repo-2",
            "repo_id": 67890,
            "branch": "dev"
        }
    ],
    "EXCLUDE_IMAGES": [
        "logo.png",
        "example.png"
    ]
}

Features in Development

The following features are currently in development and will be available in future releases:

  • Multiple repository tokens: Support for specifying different access tokens for different repositories.
  • JavaDoc generation: Automatically generate and include JavaDoc for Java projects.
  • GitHub support: Extend the plugin to support fetching documentation from GitHub repositories.
  • Enhanced image handling: Improved support for handling and documenting images.

And more: Additional features to improve flexibility and usability.

License

The mkdocs_multisource_docs plugin is open-source and can be used freely in any project. However, please provide attribution by linking back to the original repository.


For more information, issues, or contributions, please visit the GitHub repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mkdocs_multisource_docs-0.1.0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mkdocs_multisource_docs-0.1.0-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file mkdocs_multisource_docs-0.1.0.tar.gz.

File metadata

  • Download URL: mkdocs_multisource_docs-0.1.0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for mkdocs_multisource_docs-0.1.0.tar.gz
Algorithm Hash digest
SHA256 81f343c07ce7770daeb1af19e036cea1aef86ecc610c39753c66ae7f31b776ca
MD5 1417053f1a472e7563e9123bac98c1cd
BLAKE2b-256 5bc564580a2a1847cbbc041494bc64643cd4d9a185c4bca16eabdbdbbfb85ece

See more details on using hashes here.

File details

Details for the file mkdocs_multisource_docs-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mkdocs_multisource_docs-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 67017c387f43df58e0f64bcb3285574857bd8526e7e54d048a5dc0b383a026e2
MD5 8f077025c30fd3ac60e4d8062cf3d2e0
BLAKE2b-256 bcb4611bc63bd447a79d7478321ffe8d10b3766e61b17a903f64ef0956bc3c54

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page