Overview

Note

This is work in progress.

Research software must be formally published to satisfy the FAIR Principles for Research Software, improve software sustainability and enable software citation. Publication repositories make software publication possible and provide PIDs for software versions. But software publication is often a tedious, manual process.

HERMES workflows automate the publication of research software with rich metadata using an open source tool, the hermes Python package.

HERMES follows a push-based model and runs in continuous integration (CI) systems. This way, it helps overcome limitations of platform-centric pull-based services and grants its users full control over the publication process and the metadata compiled for the publication.

Rich descriptive metadata is the key element to useful software publications. We harvest existing metadata from source code repos and connected platforms, then process, collate and present them for curation, thus preparing software for automatic submission to publication repositories.

Plugins

Hermes is built to be extensible for your needs. This is a list of available plugins for the different steps in the Hermes workflow:

Harvest

  • CITATION.cff Harvester by Hermes team
    Harvest plugin for CITATION.cff files.
    This plugin is built into Hermes.
  • codemeta.json Harvester by Hermes team
    Harvest plugin for codemeta.json files.
    This plugin is built into Hermes.
  • hermes-plugin-git by Hermes team
    Harvest plugin for Git repository metadata.
  • hermes-plugin-python by Hermes team
    Harvest plugin for .toml files.
    Install via PyPI.

Process

  • Merge by Hermes team
    Process plugin for basic merging of metadata.
    This plugin is built into Hermes.

Curate

  • Curate by Hermes team
    Curation plugin for no-check acceptance of the metadata.
    This plugin is built into Hermes.

Deposit

  • Invenio Deposit by Hermes team
    Deposit plugin for Invenio-based platforms.
    This plugin is built into Hermes.
  • Invenio RDM Deposit by Hermes team
    Deposit plugin for Invenio RDM-based platforms such as Zenodo.
    This plugin is built into Hermes.
  • Rodare Deposit by Hermes team
    Deposit plugin for the Rodare publication platform at HZDR.
    This plugin is built into Hermes.

Postprocess

  • Invenio Postprocess by Hermes team
    This plugin is built into Hermes.
  • Invenio RDM Postprocess by Hermes team
    This plugin is built into Hermes.

Documentation

HERMES project

Get in touch!

HERMES is part of a global and interdisciplinary effort to improve the state of the art in research software engineering, maintenance and scholarly communications around research software. We appreciate any feedback you may have.

How to give feedback

Either create an issue in the main hermes repository or send us an email.

Acknowledgements

HERMES was developed with initial funding from the Helmholtz Metadata Collaboration (Helmholtz INF grantZT-I-PF-3-006).

Licenses

The work contained in this repository is licensed under different licenses:

  • Source code is licensed under Apache-2.0.

  • Documentation (including images) is licensed under CC BY-SA 4.0.

  • The HERMES visual (“logo”) is licensed under CC BY-ND 4.0.

  • Other files are licensed under CC0-1.0.

Please see the individual files for more accurate information. Please also let us know in a new issue if you find content that seems to be unlicensed.

We provide copyright and license information according to the REUSE Specification 3.3.

Indices and tables