Skip to content

Commit

Permalink
First iteration of plugin list on main page
Browse files Browse the repository at this point in the history
  • Loading branch information
zyzzyxdonta committed Dec 11, 2024
1 parent 721fef4 commit 86336d1
Show file tree
Hide file tree
Showing 6 changed files with 173 additions and 16 deletions.
35 changes: 35 additions & 0 deletions docs/source/_templates/plugins.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{#
SPDX-FileCopyrightText: 2024 Helmholtz-Zentrum Dresden-Rossendorf
SPDX-License-Identifier: CC-BY-SA-4.0
SPDX-FileContributor: David Pape
#}
<ul>
{%- for plugin in data -%}
<li style="margin-top: 0.5rem;">
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"name": "{{ plugin.name }}",
{%- if plugin.pypi_url -%}"installUrl": "{{ plugin.pypi_url }}",{%- endif -%}
{%- if plugin.description -%}"abstract": "{{ plugin.description }}",{%- endif -%}
{%- if plugin.author -%}"author": {"@type": "Organization", "name": "{{ plugin.author }}"},{%- endif -%}
"@type": "SoftwareApplication" {# Careful, no trailing comma! #}
}
</script>
{%- if plugin.repository_url -%}
<a href="{{ plugin.repository_url }}" rel="nofollow">{{ plugin.name }}</a>
{%- else -%}
{{ plugin.name }}
{%- endif %}
<span style="color: gray;">by <em>{{ plugin.author }}</em><br></span>
{%- if plugin.description -%}
{{ plugin.description }}<br>
{%- endif -%}
{%- if plugin.builtin -%}
<span style="color: gray;">This plugin is built into Hermes.</span><br>
{%- elif plugin.pypi_url -%}
<span style="color: gray;">Install via <a href="{{ plugin.pypi_url }}">PyPI</a>.</span><br>
{%- endif -%}
</li>
{%- endfor -%}
</ul>
1 change: 1 addition & 0 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
'autoapi.extension',
'sphinxcontrib.mermaid',
'sphinx_togglebutton',
'sphinxcontrib.datatemplates',
]

language = 'en'
Expand Down
37 changes: 23 additions & 14 deletions docs/source/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,32 +18,41 @@ SPDX-FileContributor: Michael Meinel
This is a work in progress. Expect disruptive changes.
```

Research software must be formally published to satisfy the
Research software must be formally published to satisfy the
[*FAIR Principles for Research Software*](https://doi.org/10.15497/RDA00068),
improve software sustainability and
enable software citation.
Publication repositories make software publication possible
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.
But software publication is often a tedious, manual process.

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

HERMES follows a *push-based* model and runs in
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.
publication process and the metadata compiled for the publication.

Rich descriptive metadata is the key element to useful software publications.
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.
automatic submission to publication repositories.

![](_static/img/workflow-overview.svg)

## Plugins

Hermes is built to be extensible for your needs.
This is a list of available plugins:

```{datatemplate:json} ../source/plugins.json
:template: plugins.html
```

## Documentation

<!--
```{toctree}
cli
Expand Down Expand Up @@ -76,13 +85,13 @@ Concept Paper <https://arxiv.org/abs/2201.09015>

## Get in touch!

HERMES is part of a global and interdisciplinary effort to improve the state of the art in
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](https://github.com/softwarepub/hermes/issues/new/choose) in our project repository or
Either [create an issue](https://github.com/softwarepub/hermes/issues/new/choose) in our project repository or
[send us an email](mailto:[email protected]?subject=HERMES%20Workflows).

```{include} ../../LICENSE.md
Expand All @@ -92,4 +101,4 @@ Either [create an issue](https://github.com/softwarepub/hermes/issues/new/choose

* [](genindex)
* [](modindex)
* [](search)
* [](search)
61 changes: 61 additions & 0 deletions docs/source/plugins.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
[
{
"name": "CITATION.cff",
"description": "Harvest plugin for CITATION.cff files.",
"author": "Hermes team",
"builtin": true
},
{
"name": "codemeta.json",
"description": "Harvest plugin for codemeta.json files.",
"author": "Hermes team",
"builtin": true
},
{
"name": "hermes-plugin-git",
"description": "Harvest plugin for Git repository metadata.",
"author": "Hermes team",
"repository_url": "https://github.com/softwarepub/hermes-plugin-git"
},
{
"name": "hermes-plugin-python",
"description": "Harvest plugin for .toml files.",
"author": "Hermes team",
"repository_url": "https://github.com/softwarepub/hermes-plugin-python",
"pypi_url": "https://pypi.org/project/hermes-plugin-python/"
},
{
"name": "merge",
"description": "Process plugin for basic merging of metadata.",
"author": "Hermes team",
"builtin": true
},
{
"name": "Invenio Deposit",
"description": "Deposit plugin for Invenio-based platforms.",
"author": "Hermes team",
"builtin": true
},
{
"name": "Invenio RDM Deposit",
"description": "Deposit plugin for Invenio RDM-based platforms such as Zenodo.",
"author": "Hermes team",
"builtin": true
},
{
"name": "Rodare Deposit",
"description": "Deposit plugin for the Rodare publication platform at HZDR.",
"author": "Hermes team",
"builtin": true
},
{
"name": "Invenio Postprocess",
"author": "Hermes team",
"builtin": true
},
{
"name": "Invenio RDM Postprocess",
"author": "Hermes team",
"builtin": true
}
]
54 changes: 52 additions & 2 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ sphinxext-opengraph = "^0.6.3"
sphinxcontrib-mermaid="^0.8.1"
sphinx-togglebutton="^0.3.2"
reuse = "^1.1.2"
sphinxcontrib-datatemplates = "^0.11.0"

[tool.poetry.plugins.console_scripts]
hermes = "hermes.commands.cli:main"
Expand Down

0 comments on commit 86336d1

Please sign in to comment.