Table of Contents
Tooling to support the publication process. The functionality is inspired by the go-publish workflow of IG Publisher.
It produces the following structure in the publish/ directory:
<project name>/
<version>/
IG
ig_history.json
index.html
ig-build-zips/
ZIP Archives
A project directory is created containing a directory with the current version <version> that contains the published IG and a ig_history.json file containing all published versions of the IG and index.html presenting the history inspired by the history generated by go-publish.
and can also render this into a HTML file index.html
See ReleaseNotes for all information regarding the (newest) releases.
The following comands are supported:
| Command | Description |
|---|---|
publish |
Publish a project |
render-list |
Render a ig_list.json |
Does the following:
- Migrates older structure with
ig_history.jsontopackage-list.jsonand moves files frompublish/<project>/topublish/ - Creates or updates
package-list.jsonandindex.htmlinpublish/ - Creates or updates
package-feed.xmlandindex.htmlin the IG Registry
To allow additional history information to be used for generating the history HTML file, include a package-list*.json file next to package-list.json. This can be useful to include an IG that may not be processable for IG comparison but should be included int the history page.
Renders the contents of ig_list.json into an HTML file. The IGs are grouped by the sequence name and a group derived by the common part of the sequences, e.g. the sequences My IG 1.0.0, My IG 1.0.1 and Your IG 1.0.0 will be grouped by My IG and Your IG respectively.
The tooling can either be installed as a standalone function using pipx or as a Python module.
Install using pipx
pipx install --global git+https://github.com/gematik/publish-tools.gitRun from the command line
publishtools ...Check out this repository
git clone https://github.com/gematik/publish-tools.gitInstall module
cd publish-tools
pip install .Run from the command line
python -m publish_tools ...Copyright 2025 gematik GmbH
Apache License, Version 2.0
See the LICENSE for the specific language governing permissions and limitations under the License.
- Copyright notice: Each published work result is accompanied by an explicit statement of the license conditions for use. These are regularly typical conditions in connection with open source or free software. Programs described/provided/linked here are free software, unless otherwise stated.
- Permission notice: Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
- The copyright notice (Item 1) and the permission notice (Item 2) shall be included in all copies or substantial portions of the Software.
- The software is provided "as is" without warranty of any kind, either express or implied, including, but not limited to, the warranties of fitness for a particular purpose, merchantability, and/or non-infringement. The authors or copyright holders shall not be liable in any manner whatsoever for any damages or other claims arising from, out of or in connection with the software or the use or other dealings with the software, whether in an action of contract, tort, or otherwise.
- The software is the result of research and development activities, therefore not necessarily quality assured and without the character of a liable product. For this reason, gematik does not provide any support or other user assistance (unless otherwise stated in individual cases and without justification of a legal obligation). Furthermore, there is no claim to further development and adaptation of the results to a more current state of the art.
- Gematik may remove published results temporarily or permanently from the place of publication at any time without prior notice or justification.
- Please note: Parts of this code may have been generated using AI-supported technology. Please take this into account, especially when troubleshooting, for security analyses and possible adjustments.

