nomad-catalysis 1.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nomad_catalysis-1.0.0/.cruft.json +26 -0
- nomad_catalysis-1.0.0/.devcontainer/devcontainer.json +28 -0
- nomad_catalysis-1.0.0/.github/dependabot.yml +12 -0
- nomad_catalysis-1.0.0/.github/workflows/actions.yml +56 -0
- nomad_catalysis-1.0.0/.github/workflows/mkdocs-deploy.yml +24 -0
- nomad_catalysis-1.0.0/.github/workflows/python-publish.yml +70 -0
- nomad_catalysis-1.0.0/.gitignore +130 -0
- nomad_catalysis-1.0.0/.vscode/settings.json +21 -0
- nomad_catalysis-1.0.0/LICENSE +22 -0
- nomad_catalysis-1.0.0/MANIFEST.in +1 -0
- nomad_catalysis-1.0.0/PKG-INFO +143 -0
- nomad_catalysis-1.0.0/README.md +95 -0
- nomad_catalysis-1.0.0/docs/assets/.gitignore +1 -0
- nomad_catalysis-1.0.0/docs/assets/favicon.png +0 -0
- nomad_catalysis-1.0.0/docs/assets/nomad-plugin-logo.png +0 -0
- nomad_catalysis-1.0.0/docs/how_to/ScreenshotCreateBuiltInSchema.png +0 -0
- nomad_catalysis-1.0.0/docs/how_to/ScreenshotReactionMeasurementEntry.png +0 -0
- nomad_catalysis-1.0.0/docs/how_to/ScreenshotSampleEntry.png +0 -0
- nomad_catalysis-1.0.0/docs/how_to/contribute_to_this_plugin.md +8 -0
- nomad_catalysis-1.0.0/docs/how_to/install_this_plugin.md +13 -0
- nomad_catalysis-1.0.0/docs/how_to/use_this_plugin.md +208 -0
- nomad_catalysis-1.0.0/docs/index.md +55 -0
- nomad_catalysis-1.0.0/docs/reference/references.md +142 -0
- nomad_catalysis-1.0.0/docs/stylesheets/extra.css +69 -0
- nomad_catalysis-1.0.0/docs/theme/partials/header.html +86 -0
- nomad_catalysis-1.0.0/docs/tutorial/tutorial.md +4 -0
- nomad_catalysis-1.0.0/mkdocs.yml +60 -0
- nomad_catalysis-1.0.0/move_template_files.sh +4 -0
- nomad_catalysis-1.0.0/pyproject.toml +124 -0
- nomad_catalysis-1.0.0/requirements_docs.txt +4 -0
- nomad_catalysis-1.0.0/setup.cfg +4 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/__init__.py +0 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/apps/__init__.py +11 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/apps/py_het_cat_app.py +410 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/example_uploads/__init__.py +12 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/example_uploads/het_catalysis_example/README.md +13 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/example_uploads/het_catalysis_example/catalysis_sample.archive.json +37 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/example_uploads/het_catalysis_example/methanol_synthesis.archive.json +61 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/example_uploads/het_catalysis_example/methanol_synthesis_CuZnAl.xlsx +0 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/example_uploads/het_catalysis_example/nomad.yaml +6 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/schema_packages/__init__.py +17 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/schema_packages/catalysis.py +2598 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis/schema_packages/chemical_data.py +497 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis.egg-info/PKG-INFO +143 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis.egg-info/SOURCES.txt +60 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis.egg-info/dependency_links.txt +1 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis.egg-info/entry_points.txt +4 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis.egg-info/requires.txt +6 -0
- nomad_catalysis-1.0.0/src/nomad_catalysis.egg-info/top_level.txt +1 -0
- nomad_catalysis-1.0.0/tests/apps/test_app.py +5 -0
- nomad_catalysis-1.0.0/tests/conftest.py +0 -0
- nomad_catalysis-1.0.0/tests/data/.gitkeep +0 -0
- nomad_catalysis-1.0.0/tests/data/2022-11-21_10.56.35_S36891_B. Alkan_.h5 +0 -0
- nomad_catalysis-1.0.0/tests/data/MoO3_C2_performance.xlsx +0 -0
- nomad_catalysis-1.0.0/tests/data/Reactor1_xs_vs_TOF.xlsx +0 -0
- nomad_catalysis-1.0.0/tests/data/hte_COhydrogenation_0_measurement.archive.json +348 -0
- nomad_catalysis-1.0.0/tests/data/test_reaction.archive.yaml +37 -0
- nomad_catalysis-1.0.0/tests/data/test_reaction_COhydrogenation.archive.yaml +10 -0
- nomad_catalysis-1.0.0/tests/data/test_reaction_clean_data.archive.yaml +12 -0
- nomad_catalysis-1.0.0/tests/data/test_reaction_haber.archive.yaml +7 -0
- nomad_catalysis-1.0.0/tests/data/test_sample.archive.yaml +17 -0
- nomad_catalysis-1.0.0/tests/schema_packages/test_schema.py +38 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"template": "https://github.com/FAIRmat-NFDI/cookiecutter-nomad-plugin",
|
|
3
|
+
"commit": "c40010ce548126347c5fd7b36c2a5031bcd0b34b",
|
|
4
|
+
"checkout": null,
|
|
5
|
+
"context": {
|
|
6
|
+
"cookiecutter": {
|
|
7
|
+
"full_name": "Julia Schumann",
|
|
8
|
+
"email": "jschumann@physik.hu-berlin.de",
|
|
9
|
+
"github_username": "schumannj",
|
|
10
|
+
"plugin_name": "catalysis",
|
|
11
|
+
"module_name": "catalysis",
|
|
12
|
+
"short_description": "a NOMAD plugin for heterogeneous catalysis data",
|
|
13
|
+
"version": "0.1.0",
|
|
14
|
+
"license": "MIT",
|
|
15
|
+
"include_schema_package": true,
|
|
16
|
+
"include_normalizer": false,
|
|
17
|
+
"include_parser": false,
|
|
18
|
+
"include_app": true,
|
|
19
|
+
"_copy_without_render": [
|
|
20
|
+
"*.html"
|
|
21
|
+
],
|
|
22
|
+
"_template": "https://github.com/FAIRmat-NFDI/cookiecutter-nomad-plugin"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"directory": null
|
|
26
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
|
2
|
+
// README at: https://github.com/devcontainers/templates/tree/main/src/python
|
|
3
|
+
{
|
|
4
|
+
"name": "Python 3",
|
|
5
|
+
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
|
6
|
+
"image": "mcr.microsoft.com/devcontainers/python:1-3.9-bookworm",
|
|
7
|
+
"features": {
|
|
8
|
+
"ghcr.io/devcontainers-contrib/features/ruff:1": {}
|
|
9
|
+
},
|
|
10
|
+
// Features to add to the dev container. More info: https://containers.dev/features.
|
|
11
|
+
// "features": {},
|
|
12
|
+
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
|
13
|
+
// "forwardPorts": [],
|
|
14
|
+
// Use 'postCreateCommand' to run commands after the container is created.
|
|
15
|
+
"postCreateCommand": "pipx install cruft",
|
|
16
|
+
// Configure tool-specific properties.
|
|
17
|
+
"customizations": {
|
|
18
|
+
// Configure properties specific to VS Code.
|
|
19
|
+
"vscode": {
|
|
20
|
+
// Add the IDs of extensions you want installed when the container is created.
|
|
21
|
+
"extensions": [
|
|
22
|
+
"charliermarsh.ruff"
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
|
27
|
+
// "remoteUser": "root"
|
|
28
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# To get started with Dependabot version updates, you'll need to specify which
|
|
2
|
+
# package ecosystems to update and where the package manifests are located.
|
|
3
|
+
# Please see the documentation for more information:
|
|
4
|
+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
|
5
|
+
# https://containers.dev/guide/dependabot
|
|
6
|
+
|
|
7
|
+
version: 2
|
|
8
|
+
updates:
|
|
9
|
+
- package-ecosystem: "devcontainers"
|
|
10
|
+
directory: "/"
|
|
11
|
+
schedule:
|
|
12
|
+
interval: weekly
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
name: install-and-test-workflow
|
|
2
|
+
on: [push]
|
|
3
|
+
jobs:
|
|
4
|
+
install-and-test:
|
|
5
|
+
runs-on: ubuntu-latest
|
|
6
|
+
steps:
|
|
7
|
+
- uses: actions/checkout@v4
|
|
8
|
+
- name: Set up Python 3.9
|
|
9
|
+
uses: actions/setup-python@v5
|
|
10
|
+
with:
|
|
11
|
+
python-version: 3.9
|
|
12
|
+
- name: Install dependencies
|
|
13
|
+
run: |
|
|
14
|
+
pip install --upgrade pip
|
|
15
|
+
pip install '.[dev]' --index-url https://gitlab.mpcdf.mpg.de/api/v4/projects/2187/packages/pypi/simple
|
|
16
|
+
pip install coverage coveralls
|
|
17
|
+
- name: Test with pytest
|
|
18
|
+
run: |
|
|
19
|
+
python -m coverage run -m pytest -sv
|
|
20
|
+
- name: Submit to coveralls
|
|
21
|
+
continue-on-error: true
|
|
22
|
+
env:
|
|
23
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
24
|
+
run: |
|
|
25
|
+
coveralls --service=github
|
|
26
|
+
build-and-install:
|
|
27
|
+
runs-on: ubuntu-latest
|
|
28
|
+
steps:
|
|
29
|
+
- uses: actions/checkout@v4
|
|
30
|
+
- name: Set up Python 3.9
|
|
31
|
+
uses: actions/setup-python@v5
|
|
32
|
+
with:
|
|
33
|
+
python-version: 3.9
|
|
34
|
+
- name: Build the package
|
|
35
|
+
run: |
|
|
36
|
+
pip install --upgrade pip
|
|
37
|
+
pip install build
|
|
38
|
+
python -m build --sdist
|
|
39
|
+
- name: Install the package
|
|
40
|
+
run: |
|
|
41
|
+
pip install dist/*.tar.gz --index-url https://gitlab.mpcdf.mpg.de/api/v4/projects/2187/packages/pypi/simple
|
|
42
|
+
ruff-linting:
|
|
43
|
+
runs-on: ubuntu-latest
|
|
44
|
+
steps:
|
|
45
|
+
- uses: actions/checkout@v4
|
|
46
|
+
- uses: chartboost/ruff-action@v1
|
|
47
|
+
with:
|
|
48
|
+
args: "check ."
|
|
49
|
+
# to enable auto-formatting check, uncomment the following lines below
|
|
50
|
+
# ruff-formatting:
|
|
51
|
+
# runs-on: ubuntu-latest
|
|
52
|
+
# steps:
|
|
53
|
+
# - uses: actions/checkout@v4
|
|
54
|
+
# - uses: chartboost/ruff-action@v1
|
|
55
|
+
# with:
|
|
56
|
+
# args: "format . --check"
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
name: Deploy MkDocs Site
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- main # Triggers deployment on push to the main branch
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: write
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
deploy:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout Repository
|
|
17
|
+
uses: actions/checkout@v4
|
|
18
|
+
|
|
19
|
+
- name: Deploy docs
|
|
20
|
+
uses: mhausenblas/mkdocs-deploy-gh-pages@master
|
|
21
|
+
env:
|
|
22
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
23
|
+
CONFIG_FILE: mkdocs.yml
|
|
24
|
+
REQUIREMENTS: requirements_docs.txt
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# This workflow will upload a Python Package to PyPI when a release is created
|
|
2
|
+
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries
|
|
3
|
+
|
|
4
|
+
# This workflow uses actions that are not certified by GitHub.
|
|
5
|
+
# They are provided by a third-party and are governed by
|
|
6
|
+
# separate terms of service, privacy policy, and support
|
|
7
|
+
# documentation.
|
|
8
|
+
|
|
9
|
+
name: Upload Python Package
|
|
10
|
+
|
|
11
|
+
on:
|
|
12
|
+
release:
|
|
13
|
+
types: [published]
|
|
14
|
+
|
|
15
|
+
permissions:
|
|
16
|
+
contents: read
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
release-build:
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
|
|
22
|
+
steps:
|
|
23
|
+
- uses: actions/checkout@v4
|
|
24
|
+
|
|
25
|
+
- uses: actions/setup-python@v5
|
|
26
|
+
with:
|
|
27
|
+
python-version: "3.x"
|
|
28
|
+
|
|
29
|
+
- name: Build release distributions
|
|
30
|
+
run: |
|
|
31
|
+
python -m pip install --upgrade pip
|
|
32
|
+
pip install build
|
|
33
|
+
python -m build
|
|
34
|
+
|
|
35
|
+
- name: Upload distributions
|
|
36
|
+
uses: actions/upload-artifact@v4
|
|
37
|
+
with:
|
|
38
|
+
name: release-dists
|
|
39
|
+
path: dist/
|
|
40
|
+
|
|
41
|
+
pypi-publish:
|
|
42
|
+
runs-on: ubuntu-latest
|
|
43
|
+
needs:
|
|
44
|
+
- release-build
|
|
45
|
+
permissions:
|
|
46
|
+
# IMPORTANT: this permission is mandatory for trusted publishing
|
|
47
|
+
id-token: write
|
|
48
|
+
|
|
49
|
+
# Dedicated environments with protections for publishing are strongly recommended.
|
|
50
|
+
# For more information, see: https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-protection-rules
|
|
51
|
+
environment:
|
|
52
|
+
name: pypi
|
|
53
|
+
# OPTIONAL: uncomment and update to include your PyPI project URL in the deployment status:
|
|
54
|
+
# url: https://pypi.org/p/YOURPROJECT
|
|
55
|
+
#
|
|
56
|
+
# ALTERNATIVE: if your GitHub Release name is the PyPI project version string
|
|
57
|
+
# ALTERNATIVE: exactly, uncomment the following line instead:
|
|
58
|
+
# url: https://pypi.org/project/YOURPROJECT/${{ github.event.release.name }}
|
|
59
|
+
|
|
60
|
+
steps:
|
|
61
|
+
- name: Retrieve release distributions
|
|
62
|
+
uses: actions/download-artifact@v4
|
|
63
|
+
with:
|
|
64
|
+
name: release-dists
|
|
65
|
+
path: dist/
|
|
66
|
+
|
|
67
|
+
- name: Publish release distributions to PyPI
|
|
68
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
69
|
+
with:
|
|
70
|
+
packages-dir: dist/
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
build/
|
|
12
|
+
develop-eggs/
|
|
13
|
+
dist/
|
|
14
|
+
downloads/
|
|
15
|
+
eggs/
|
|
16
|
+
.eggs/
|
|
17
|
+
lib/
|
|
18
|
+
lib64/
|
|
19
|
+
parts/
|
|
20
|
+
sdist/
|
|
21
|
+
var/
|
|
22
|
+
wheels/
|
|
23
|
+
pip-wheel-metadata/
|
|
24
|
+
share/python-wheels/
|
|
25
|
+
*.egg-info/
|
|
26
|
+
.installed.cfg
|
|
27
|
+
*.egg
|
|
28
|
+
MANIFEST
|
|
29
|
+
|
|
30
|
+
# PyInstaller
|
|
31
|
+
# Usually these files are written by a python script from a template
|
|
32
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
33
|
+
*.manifest
|
|
34
|
+
*.spec
|
|
35
|
+
|
|
36
|
+
# Installer logs
|
|
37
|
+
pip-log.txt
|
|
38
|
+
pip-delete-this-directory.txt
|
|
39
|
+
|
|
40
|
+
# Unit test / coverage reports
|
|
41
|
+
htmlcov/
|
|
42
|
+
.tox/
|
|
43
|
+
.nox/
|
|
44
|
+
.coverage
|
|
45
|
+
.coverage.*
|
|
46
|
+
.cache
|
|
47
|
+
nosetests.xml
|
|
48
|
+
coverage.xml
|
|
49
|
+
*.cover
|
|
50
|
+
*.py,cover
|
|
51
|
+
.hypothesis/
|
|
52
|
+
.pytest_cache/
|
|
53
|
+
|
|
54
|
+
# Translations
|
|
55
|
+
*.mo
|
|
56
|
+
*.pot
|
|
57
|
+
|
|
58
|
+
# Django stuff:
|
|
59
|
+
*.log
|
|
60
|
+
local_settings.py
|
|
61
|
+
db.sqlite3
|
|
62
|
+
db.sqlite3-journal
|
|
63
|
+
|
|
64
|
+
# Flask stuff:
|
|
65
|
+
instance/
|
|
66
|
+
.webassets-cache
|
|
67
|
+
|
|
68
|
+
# Scrapy stuff:
|
|
69
|
+
.scrapy
|
|
70
|
+
|
|
71
|
+
# Sphinx documentation
|
|
72
|
+
docs/_build/
|
|
73
|
+
|
|
74
|
+
# PyBuilder
|
|
75
|
+
target/
|
|
76
|
+
|
|
77
|
+
# Jupyter Notebook
|
|
78
|
+
.ipynb_checkpoints
|
|
79
|
+
|
|
80
|
+
# IPython
|
|
81
|
+
profile_default/
|
|
82
|
+
ipython_config.py
|
|
83
|
+
|
|
84
|
+
# pyenv
|
|
85
|
+
.python-version
|
|
86
|
+
|
|
87
|
+
# pipenv
|
|
88
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
89
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
90
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
91
|
+
# install all needed dependencies.
|
|
92
|
+
#Pipfile.lock
|
|
93
|
+
|
|
94
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
|
|
95
|
+
__pypackages__/
|
|
96
|
+
|
|
97
|
+
# Celery stuff
|
|
98
|
+
celerybeat-schedule
|
|
99
|
+
celerybeat.pid
|
|
100
|
+
|
|
101
|
+
# SageMath parsed files
|
|
102
|
+
*.sage.py
|
|
103
|
+
|
|
104
|
+
# Environments
|
|
105
|
+
.env
|
|
106
|
+
.venv
|
|
107
|
+
env/
|
|
108
|
+
venv/
|
|
109
|
+
ENV/
|
|
110
|
+
env.bak/
|
|
111
|
+
venv.bak/
|
|
112
|
+
.pyenv
|
|
113
|
+
|
|
114
|
+
# Spyder project settings
|
|
115
|
+
.spyderproject
|
|
116
|
+
.spyproject
|
|
117
|
+
|
|
118
|
+
# Rope project settings
|
|
119
|
+
.ropeproject
|
|
120
|
+
|
|
121
|
+
# mkdocs documentation
|
|
122
|
+
/site
|
|
123
|
+
|
|
124
|
+
# mypy
|
|
125
|
+
.mypy_cache/
|
|
126
|
+
.dmypy.json
|
|
127
|
+
dmypy.json
|
|
128
|
+
|
|
129
|
+
# Pyre type checker
|
|
130
|
+
.pyre/
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"editor.rulers": [
|
|
3
|
+
90
|
|
4
|
+
],
|
|
5
|
+
"editor.renderWhitespace": "all",
|
|
6
|
+
"editor.tabSize": 4,
|
|
7
|
+
"files.trimTrailingWhitespace": true,
|
|
8
|
+
"[python]": {
|
|
9
|
+
"editor.formatOnSave": true,
|
|
10
|
+
"editor.codeActionsOnSave": {
|
|
11
|
+
"source.fixAll": "explicit",
|
|
12
|
+
"source.organizeImports": "explicit"
|
|
13
|
+
},
|
|
14
|
+
"editor.defaultFormatter": "charliermarsh.ruff"
|
|
15
|
+
},
|
|
16
|
+
"python.testing.pytestArgs": [
|
|
17
|
+
"tests"
|
|
18
|
+
],
|
|
19
|
+
"python.testing.unittestEnabled": false,
|
|
20
|
+
"python.testing.pytestEnabled": true
|
|
21
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
The MIT License (MIT)
|
|
3
|
+
|
|
4
|
+
Copyright (c) 2024 Julia Schumann
|
|
5
|
+
|
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
8
|
+
in the Software without restriction, including without limitation the rights
|
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
11
|
+
furnished to do so, subject to the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be included in
|
|
14
|
+
all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
22
|
+
THE SOFTWARE.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
recursive-include * nomad_plugin.yaml
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
|
+
Name: nomad-catalysis
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: A NOMAD plugin for heterogeneous catalysis data.
|
|
5
|
+
Author: Julia Schumann, Hampus Näsström, Michael Götte
|
|
6
|
+
Author-email: fairmat@physik.hu-berlin.de
|
|
7
|
+
Maintainer-email: Julia Schumann <jschumann@physik.hu-berlin.de>, FAIRmat <fairmat@physik.hu-berlin.de>
|
|
8
|
+
License:
|
|
9
|
+
The MIT License (MIT)
|
|
10
|
+
|
|
11
|
+
Copyright (c) 2024 Julia Schumann
|
|
12
|
+
|
|
13
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
14
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
15
|
+
in the Software without restriction, including without limitation the rights
|
|
16
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
17
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
18
|
+
furnished to do so, subject to the following conditions:
|
|
19
|
+
|
|
20
|
+
The above copyright notice and this permission notice shall be included in
|
|
21
|
+
all copies or substantial portions of the Software.
|
|
22
|
+
|
|
23
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
24
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
25
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
26
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
27
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
28
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
29
|
+
THE SOFTWARE.
|
|
30
|
+
|
|
31
|
+
Project-URL: Repository, https://github.com/FAIRmat-NFDI/nomad-catalysis-plugin
|
|
32
|
+
Classifier: Intended Audience :: Developers
|
|
33
|
+
Classifier: Operating System :: OS Independent
|
|
34
|
+
Classifier: Programming Language :: Python
|
|
35
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
36
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
37
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
38
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
39
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
40
|
+
Requires-Python: >=3.9
|
|
41
|
+
Description-Content-Type: text/markdown
|
|
42
|
+
License-File: LICENSE
|
|
43
|
+
Requires-Dist: nomad-lab>=1.3.11
|
|
44
|
+
Provides-Extra: dev
|
|
45
|
+
Requires-Dist: ruff; extra == "dev"
|
|
46
|
+
Requires-Dist: pytest; extra == "dev"
|
|
47
|
+
Requires-Dist: structlog; extra == "dev"
|
|
48
|
+
|
|
49
|
+

|
|
50
|
+
# nomad-catalysis
|
|
51
|
+
|
|
52
|
+
This is a NOMAD plugin for heterogeneous catalysis data. You can find the full documentation [here](https://fairmat-nfdi.github.io/nomad-catalysis-plugin/). For some default information about NOMAD plugins see below.
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
----
|
|
56
|
+
|
|
57
|
+
This `nomad`_ plugin was generated with `Cookiecutter`_ along with `@nomad`_'s `cookiecutter-nomad-plugin`_ template.
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
### Install
|
|
61
|
+
|
|
62
|
+
You should create a virtual environment. You will need the `nomad-lab` package (and `pytest`).
|
|
63
|
+
We recommend using Python 3.11.
|
|
64
|
+
|
|
65
|
+
```sh
|
|
66
|
+
python3 -m venv .pyenv
|
|
67
|
+
source .pyenv/bin/activate
|
|
68
|
+
pip install --upgrade pip
|
|
69
|
+
pip install -e '.[dev]' --index-url https://gitlab.mpcdf.mpg.de/api/v4/projects/2187/packages/pypi/simple
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Note!**
|
|
73
|
+
Until we have an official pypi NOMAD release with the plugins functionality. Make
|
|
74
|
+
sure to include NOMAD's internal package registry (e.g. via `--index-url`).
|
|
75
|
+
|
|
76
|
+
### Testing
|
|
77
|
+
|
|
78
|
+
You can run automated tests with `pytest`:
|
|
79
|
+
|
|
80
|
+
```sh
|
|
81
|
+
pytest -svx tests
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Run linting
|
|
85
|
+
|
|
86
|
+
```sh
|
|
87
|
+
ruff check .
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Run auto-formatting
|
|
91
|
+
|
|
92
|
+
This is entirely optional. To add this as a check in github actions pipeline, uncomment the `ruff-formatting` step in `./github/workflows/actions.yaml`.
|
|
93
|
+
|
|
94
|
+
```sh
|
|
95
|
+
ruff format .
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Developing a NOMAD plugin
|
|
99
|
+
|
|
100
|
+
Follow the [guide](https://nomad-lab.eu/prod/v1/staging/docs/howto/plugins/plugins.html) on how to develop NOMAD plugins.
|
|
101
|
+
|
|
102
|
+
### Build the python package
|
|
103
|
+
|
|
104
|
+
The `pyproject.toml` file contains everything that is necessary to turn the project
|
|
105
|
+
into a pip installable python package. Run the python build tool to create a package distribution:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
pip install build
|
|
109
|
+
python -m build --sdist
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
You can install the package with pip:
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
pip install dist/nomad-catalysis-0.1.0
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Read more about python packages, `pyproject.toml`, and how to upload packages to PyPI
|
|
119
|
+
on the [PyPI documentation](https://packaging.python.org/en/latest/tutorials/packaging-projects/).
|
|
120
|
+
|
|
121
|
+
### Documentation on Github pages
|
|
122
|
+
|
|
123
|
+
To deploy documentation on Github pages, make sure to [enable GitHub pages via the repo settings](https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#publishing-from-a-branch).
|
|
124
|
+
|
|
125
|
+
To view the documentation locally, install the documentation related packages using:
|
|
126
|
+
|
|
127
|
+
```sh
|
|
128
|
+
pip install -r requirements_docs.txt
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Run the documentation server:
|
|
132
|
+
```sh
|
|
133
|
+
mkdocs serve
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Template update
|
|
137
|
+
|
|
138
|
+
We use cruft to update the project based on template changes. A `cruft-update.yml` is included in Github workflows to automatically check for updates and create pull requests to apply updates. Follow the [instructions](https://github.blog/changelog/2022-05-03-github-actions-prevent-github-actions-from-creating-and-approving-pull-requests/) on how to enable Github Actions to create pull requests.
|
|
139
|
+
|
|
140
|
+
To run the check for updates locally, follow the instructions on [`cruft` website](https://cruft.github.io/cruft/#updating-a-project).
|
|
141
|
+
|
|
142
|
+
### License
|
|
143
|
+
Distributed under the terms of the `MIT`_ license, "nomad-catalysis" is free and open source software.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+

|
|
2
|
+
# nomad-catalysis
|
|
3
|
+
|
|
4
|
+
This is a NOMAD plugin for heterogeneous catalysis data. You can find the full documentation [here](https://fairmat-nfdi.github.io/nomad-catalysis-plugin/). For some default information about NOMAD plugins see below.
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
----
|
|
8
|
+
|
|
9
|
+
This `nomad`_ plugin was generated with `Cookiecutter`_ along with `@nomad`_'s `cookiecutter-nomad-plugin`_ template.
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Install
|
|
13
|
+
|
|
14
|
+
You should create a virtual environment. You will need the `nomad-lab` package (and `pytest`).
|
|
15
|
+
We recommend using Python 3.11.
|
|
16
|
+
|
|
17
|
+
```sh
|
|
18
|
+
python3 -m venv .pyenv
|
|
19
|
+
source .pyenv/bin/activate
|
|
20
|
+
pip install --upgrade pip
|
|
21
|
+
pip install -e '.[dev]' --index-url https://gitlab.mpcdf.mpg.de/api/v4/projects/2187/packages/pypi/simple
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
**Note!**
|
|
25
|
+
Until we have an official pypi NOMAD release with the plugins functionality. Make
|
|
26
|
+
sure to include NOMAD's internal package registry (e.g. via `--index-url`).
|
|
27
|
+
|
|
28
|
+
### Testing
|
|
29
|
+
|
|
30
|
+
You can run automated tests with `pytest`:
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
pytest -svx tests
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Run linting
|
|
37
|
+
|
|
38
|
+
```sh
|
|
39
|
+
ruff check .
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Run auto-formatting
|
|
43
|
+
|
|
44
|
+
This is entirely optional. To add this as a check in github actions pipeline, uncomment the `ruff-formatting` step in `./github/workflows/actions.yaml`.
|
|
45
|
+
|
|
46
|
+
```sh
|
|
47
|
+
ruff format .
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Developing a NOMAD plugin
|
|
51
|
+
|
|
52
|
+
Follow the [guide](https://nomad-lab.eu/prod/v1/staging/docs/howto/plugins/plugins.html) on how to develop NOMAD plugins.
|
|
53
|
+
|
|
54
|
+
### Build the python package
|
|
55
|
+
|
|
56
|
+
The `pyproject.toml` file contains everything that is necessary to turn the project
|
|
57
|
+
into a pip installable python package. Run the python build tool to create a package distribution:
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
pip install build
|
|
61
|
+
python -m build --sdist
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
You can install the package with pip:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
pip install dist/nomad-catalysis-0.1.0
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Read more about python packages, `pyproject.toml`, and how to upload packages to PyPI
|
|
71
|
+
on the [PyPI documentation](https://packaging.python.org/en/latest/tutorials/packaging-projects/).
|
|
72
|
+
|
|
73
|
+
### Documentation on Github pages
|
|
74
|
+
|
|
75
|
+
To deploy documentation on Github pages, make sure to [enable GitHub pages via the repo settings](https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#publishing-from-a-branch).
|
|
76
|
+
|
|
77
|
+
To view the documentation locally, install the documentation related packages using:
|
|
78
|
+
|
|
79
|
+
```sh
|
|
80
|
+
pip install -r requirements_docs.txt
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Run the documentation server:
|
|
84
|
+
```sh
|
|
85
|
+
mkdocs serve
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Template update
|
|
89
|
+
|
|
90
|
+
We use cruft to update the project based on template changes. A `cruft-update.yml` is included in Github workflows to automatically check for updates and create pull requests to apply updates. Follow the [instructions](https://github.blog/changelog/2022-05-03-github-actions-prevent-github-actions-from-creating-and-approving-pull-requests/) on how to enable Github Actions to create pull requests.
|
|
91
|
+
|
|
92
|
+
To run the check for updates locally, follow the instructions on [`cruft` website](https://cruft.github.io/cruft/#updating-a-project).
|
|
93
|
+
|
|
94
|
+
### License
|
|
95
|
+
Distributed under the terms of the `MIT`_ license, "nomad-catalysis" is free and open source software.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
nomad-oasis*.zip
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Contribute to This Plugin
|
|
2
|
+
|
|
3
|
+
Contributions to the development of the catalysis plugin are highly welcome. If you have example datasets you want to publish or general feedback and suggestions to improve the plugin, please get in touch by opening an issue in the plugin repository or sending and email.
|
|
4
|
+
|
|
5
|
+
# Contribute to the documentation
|
|
6
|
+
|
|
7
|
+
If you want to contribute to the documentation, please create an issue in the repo or get in touch with the authors.
|
|
8
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Install This Plugin
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
To include this plugin as part of your local or institutional NOMAD Oasis the following
|
|
5
|
+
line needs to be added to the `pyproject.toml` file of the Oasis repo:
|
|
6
|
+
```git+https://github.com/FAIRmat-NFDI/nomad-catalysis-plugin.git@main```
|
|
7
|
+
|
|
8
|
+
For a detailed guide on how to setup and install a new Oasis, see the [Tutorial 13 part 4](https://github.com/FAIRmat-NFDI/AreaA-Examples/tree/main/tutorial13/part4)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
## Add This Plugin to Your NOMAD installation
|
|
12
|
+
|
|
13
|
+
Read the [NOMAD plugin documentation](https://nomad-lab.eu/prod/v1/staging/docs/plugins/plugins.html#add-a-plugin-to-your-nomad) for all details on how to deploy the plugin on your NOMAD instance.
|