nomad-simulation-apps 0.1.2__tar.gz → 0.2.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.
Files changed (48) hide show
  1. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.devcontainer/devcontainer.json +1 -1
  2. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.github/workflows/actions.yml +5 -5
  3. nomad_simulation_apps-0.2.0/.github/workflows/publish.yml +54 -0
  4. nomad_simulation_apps-0.2.0/MANIFEST.in +2 -0
  5. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/PKG-INFO +6 -7
  6. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/README.md +3 -3
  7. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/how_to/install_this_plugin.md +4 -4
  8. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/mkdocs.yml +0 -1
  9. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/pyproject.toml +4 -3
  10. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps/apps/__init__.py +8 -1
  11. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps/apps/alexandria_dashboard.yaml +29 -28
  12. nomad_simulation_apps-0.2.0/src/nomad_simulation_apps/apps/simulations_app.py +752 -0
  13. nomad_simulation_apps-0.2.0/src/nomad_simulation_apps/apps/simulations_dashboard.yaml +49 -0
  14. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps.egg-info/PKG-INFO +6 -7
  15. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps.egg-info/SOURCES.txt +5 -1
  16. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps.egg-info/entry_points.txt +1 -0
  17. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps.egg-info/requires.txt +1 -1
  18. nomad_simulation_apps-0.2.0/src/nomad_simulation_apps.egg-info/scm_file_list.json +39 -0
  19. nomad_simulation_apps-0.2.0/src/nomad_simulation_apps.egg-info/scm_version.json +8 -0
  20. nomad_simulation_apps-0.2.0/tests/apps/test_simulations_app.py +196 -0
  21. nomad_simulation_apps-0.1.2/.github/workflows/cruft-update.yml +0 -75
  22. nomad_simulation_apps-0.1.2/.github/workflows/publish.yml +0 -33
  23. nomad_simulation_apps-0.1.2/MANIFEST.in +0 -3
  24. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.cruft.json +0 -0
  25. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.github/dependabot.yml +0 -0
  26. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.github/workflows/mkdocs-deploy.yml +0 -0
  27. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.gitignore +0 -0
  28. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/.vscode/settings.json +0 -0
  29. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/LICENSE +0 -0
  30. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/assets/.gitignore +0 -0
  31. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/assets/favicon.png +0 -0
  32. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/assets/nomad-plugin-logo.png +0 -0
  33. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/how_to/contribute.md +0 -0
  34. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/how_to/use_this_plugin.md +0 -0
  35. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/index.md +0 -0
  36. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/reference/references.md +0 -0
  37. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/stylesheets/extra.css +0 -0
  38. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/theme/partials/header.html +0 -0
  39. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/docs/tutorial/alexandria.md +0 -0
  40. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/requirements_docs.txt +0 -0
  41. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/setup.cfg +0 -0
  42. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps/__init__.py +0 -0
  43. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps/apps/alexandria_app.py +0 -0
  44. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps.egg-info/dependency_links.txt +0 -0
  45. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/src/nomad_simulation_apps.egg-info/top_level.txt +0 -0
  46. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/tests/apps/test_alexandria_app.py +0 -0
  47. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/tests/conftest.py +0 -0
  48. {nomad_simulation_apps-0.1.2 → nomad_simulation_apps-0.2.0}/tests/data/.gitkeep +0 -0
@@ -5,7 +5,7 @@
5
5
  // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
6
6
  "image": "mcr.microsoft.com/devcontainers/python:1-3.9-bookworm",
7
7
  "features": {
8
- "ghcr.io/devcontainers-contrib/features/ruff:1": {}
8
+ "ghcr.io/devcontainers-contrib/features/ruff:2": {}
9
9
  },
10
10
  // Features to add to the dev container. More info: https://containers.dev/features.
11
11
  // "features": {},
@@ -5,10 +5,10 @@ jobs:
5
5
  runs-on: ubuntu-latest
6
6
  steps:
7
7
  - uses: actions/checkout@v4
8
- - name: Set up Python 3.9
8
+ - name: Set up Python 3.10
9
9
  uses: actions/setup-python@v5
10
10
  with:
11
- python-version: 3.9
11
+ python-version: '3.10'
12
12
  - name: Install dependencies
13
13
  run: |
14
14
  pip install --upgrade pip
@@ -27,10 +27,10 @@ jobs:
27
27
  runs-on: ubuntu-latest
28
28
  steps:
29
29
  - uses: actions/checkout@v4
30
- - name: Set up Python 3.9
30
+ - name: Set up Python 3.10
31
31
  uses: actions/setup-python@v5
32
32
  with:
33
- python-version: 3.9
33
+ python-version: '3.10'
34
34
  - name: Build the package
35
35
  run: |
36
36
  pip install --upgrade pip
@@ -53,4 +53,4 @@ jobs:
53
53
  # - uses: actions/checkout@v4
54
54
  # - uses: chartboost/ruff-action@v1
55
55
  # with:
56
- # args: "format . --check"
56
+ # args: "format . --check"
@@ -0,0 +1,54 @@
1
+ # Upload the distribution to PyPI when a GitHub release is published.
2
+ # Reference: https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
3
+
4
+ name: Upload Python Package
5
+
6
+ on:
7
+ release:
8
+ types: [published]
9
+
10
+ jobs:
11
+ build:
12
+ name: Build distribution
13
+ runs-on: ubuntu-latest
14
+ permissions:
15
+ contents: read
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+ with:
19
+ fetch-depth: 0 # setuptools-scm needs the release tag and Git history
20
+ persist-credentials: false
21
+ - name: Set up Python
22
+ uses: actions/setup-python@v5
23
+ with:
24
+ python-version: '3.12'
25
+ - name: Install dependencies
26
+ run: |
27
+ python -m pip install --upgrade pip
28
+ python -m pip install build
29
+ - name: Build package
30
+ run: python -m build
31
+ - name: Store distributions
32
+ uses: actions/upload-artifact@v5
33
+ with:
34
+ name: python-package-distributions
35
+ path: dist/
36
+ if-no-files-found: error
37
+
38
+ publish-to-pypi:
39
+ name: Publish distribution to PyPI
40
+ needs: build
41
+ runs-on: ubuntu-latest
42
+ environment:
43
+ name: pypi
44
+ url: https://pypi.org/p/nomad-simulation-apps
45
+ permissions:
46
+ id-token: write # Required for PyPI trusted publishing
47
+ steps:
48
+ - name: Download distributions
49
+ uses: actions/download-artifact@v6
50
+ with:
51
+ name: python-package-distributions
52
+ path: dist/
53
+ - name: Publish package to PyPI
54
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,2 @@
1
+ include src/nomad_simulation_apps/apps/alexandria_dashboard.yaml
2
+ include src/nomad_simulation_apps/apps/simulations_dashboard.yaml
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nomad-simulation-apps
3
- Version: 0.1.2
3
+ Version: 0.2.0
4
4
  Summary: A repository for housing NOMAD's collection of simulation app plugins.
5
5
  Author-email: Martin Kuban <kuban@physik.hu-berlin.de>
6
6
  Maintainer-email: Martin Kuban <kuban@physik.hu-berlin.de>
@@ -212,15 +212,14 @@ Project-URL: Documentation, https://fairmat-nfdi.github.io/nomad-app-plugins-sim
212
212
  Classifier: Intended Audience :: Developers
213
213
  Classifier: Operating System :: OS Independent
214
214
  Classifier: Programming Language :: Python
215
- Classifier: Programming Language :: Python :: 3.9
216
215
  Classifier: Programming Language :: Python :: 3.10
217
216
  Classifier: Programming Language :: Python :: 3.11
218
217
  Classifier: Programming Language :: Python :: 3.12
219
218
  Classifier: License :: OSI Approved :: Apache Software License
220
- Requires-Python: >=3.9
219
+ Requires-Python: >=3.10
221
220
  Description-Content-Type: text/markdown
222
221
  License-File: LICENSE
223
- Requires-Dist: nomad-lab>=1.3.0
222
+ Requires-Dist: nomad-lab>=1.4.0
224
223
  Requires-Dist: python-magic-bin; sys_platform == "win32"
225
224
  Provides-Extra: dev
226
225
  Requires-Dist: ruff; extra == "dev"
@@ -244,10 +243,10 @@ pip install nomad-simulation-apps
244
243
 
245
244
  ## Development
246
245
 
247
- If you want to develop locally this plugin, clone the project and in the plugin folder, create a virtual environment (you can use Python 3.9, 3.10, or 3.11):
246
+ If you want to develop locally this plugin, clone the project and in the plugin folder, create a virtual environment (you can use Python 3.10 or newer):
248
247
  ```sh
249
- git clone https://github.com/FAIRmat-NFDI/nomad-simulation-apps.git
250
- cd nomad-simulation-apps
248
+ git clone https://github.com/FAIRmat-NFDI/nomad-app-plugins-simulation.git
249
+ cd nomad-app-plugins-simulation
251
250
  python3.11 -m venv .pyenv
252
251
  . .pyenv/bin/activate
253
252
  ```
@@ -14,10 +14,10 @@ pip install nomad-simulation-apps
14
14
 
15
15
  ## Development
16
16
 
17
- If you want to develop locally this plugin, clone the project and in the plugin folder, create a virtual environment (you can use Python 3.9, 3.10, or 3.11):
17
+ If you want to develop locally this plugin, clone the project and in the plugin folder, create a virtual environment (you can use Python 3.10 or newer):
18
18
  ```sh
19
- git clone https://github.com/FAIRmat-NFDI/nomad-simulation-apps.git
20
- cd nomad-simulation-apps
19
+ git clone https://github.com/FAIRmat-NFDI/nomad-app-plugins-simulation.git
20
+ cd nomad-app-plugins-simulation
21
21
  python3.11 -m venv .pyenv
22
22
  . .pyenv/bin/activate
23
23
  ```
@@ -6,10 +6,10 @@ This package will be available on PyPI soon.
6
6
 
7
7
  ## Development
8
8
 
9
- If you want to develop this module locally, clone the project and in the plugin folder, create a virtual environment (you can use Python 3.9, 3.10, or 3.11):
9
+ If you want to develop this module locally, clone the project and in the plugin folder, create a virtual environment (you can use Python 3.10 or newer):
10
10
  ```sh
11
- git clone https://github.com/FAIRmat-NFDI/nomad-app-plugins-simulation
12
- cd nomad-simulation-apps
11
+ git clone https://github.com/FAIRmat-NFDI/nomad-app-plugins-simulation.git
12
+ cd nomad-app-plugins-simulation
13
13
  python3.11 -m venv .pyenv
14
14
  . .pyenv/bin/activate
15
15
  ```
@@ -103,4 +103,4 @@ uv pip install -r requirements_docs.txt
103
103
  Run the documentation server:
104
104
  ```sh
105
105
  mkdocs serve
106
- ```
106
+ ```
@@ -55,5 +55,4 @@ extra_css:
55
55
  - stylesheets/extra.css
56
56
  extra_javascript:
57
57
  - javascript.js
58
- - https://polyfill.io/v3/polyfill.min.js?features=es6
59
58
  - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js
@@ -7,7 +7,6 @@ classifiers = [
7
7
  "Intended Audience :: Developers",
8
8
  "Operating System :: OS Independent",
9
9
  "Programming Language :: Python",
10
- "Programming Language :: Python :: 3.9",
11
10
  "Programming Language :: Python :: 3.10",
12
11
  "Programming Language :: Python :: 3.11",
13
12
  "Programming Language :: Python :: 3.12",
@@ -17,7 +16,7 @@ name = "nomad-simulation-apps"
17
16
  description = "A repository for housing NOMAD's collection of simulation app plugins."
18
17
  dynamic = ["version"]
19
18
  readme = "README.md"
20
- requires-python = ">=3.9"
19
+ requires-python = ">=3.10"
21
20
  authors = [
22
21
  { name = "Martin Kuban", email = "kuban@physik.hu-berlin.de" },
23
22
  ]
@@ -26,7 +25,7 @@ maintainers = [
26
25
  ]
27
26
  license = { file = "LICENSE" }
28
27
  dependencies = [
29
- "nomad-lab>=1.3.0",
28
+ "nomad-lab>=1.4.0",
30
29
  "python-magic-bin; sys_platform == 'win32'",
31
30
  ]
32
31
 
@@ -84,6 +83,7 @@ select = [
84
83
 
85
84
  ignore = [
86
85
  "F403", # 'from module import *' used; unable to detect undefined names
86
+ "PLC0415", # import-outside-top-level
87
87
  ]
88
88
 
89
89
  fixable = ["ALL"]
@@ -115,6 +115,7 @@ where = ["src"]
115
115
 
116
116
  [project.entry-points.'nomad.plugin']
117
117
  alexandria_app = "nomad_simulation_apps.apps:alexandria_entry_point"
118
+ simulations_app = "nomad_simulation_apps.apps:simulations_entry_point"
118
119
 
119
120
  [tool.cruft]
120
121
  # Avoid updating workflow files, this leads to permissions issues
@@ -1,9 +1,16 @@
1
1
  from nomad.config.models.plugins import AppEntryPoint
2
2
 
3
3
  from nomad_simulation_apps.apps.alexandria_app import alexandria_app
4
+ from nomad_simulation_apps.apps.simulations_app import simulations_app
4
5
 
5
6
  alexandria_entry_point = AppEntryPoint(
6
7
  name='Alexandria',
7
8
  description='Explore the data of the Alexandria database within NOMAD.',
8
- app=alexandria_app
9
+ app=alexandria_app,
10
+ )
11
+
12
+ simulations_entry_point = AppEntryPoint(
13
+ name='Simulations',
14
+ description='Explore simulations within NOMAD.',
15
+ app=simulations_app,
9
16
  )
@@ -34,7 +34,7 @@ widgets:
34
34
  sm:
35
35
  minH: 3
36
36
  minW: 3
37
- h: 8
37
+ h: 9
38
38
  w: 12
39
39
  y: 0
40
40
  x: 0
@@ -74,10 +74,10 @@ widgets:
74
74
  sm:
75
75
  minH: 3
76
76
  minW: 3
77
- h: 4
78
- w: 3
79
- y: 8
80
- x: 6
77
+ h: 9
78
+ w: 12
79
+ y: 36
80
+ x: 0
81
81
  - type: terms
82
82
  show_input: true
83
83
  scale: linear
@@ -114,10 +114,10 @@ widgets:
114
114
  sm:
115
115
  minH: 3
116
116
  minW: 3
117
- h: 4
118
- w: 3
119
- y: 8
120
- x: 3
117
+ h: 9
118
+ w: 12
119
+ y: 18
120
+ x: 0
121
121
  - type: terms
122
122
  show_input: true
123
123
  scale: linear
@@ -154,9 +154,9 @@ widgets:
154
154
  sm:
155
155
  minH: 3
156
156
  minW: 3
157
- h: 4
158
- w: 3
159
- y: 8
157
+ h: 9
158
+ w: 12
159
+ y: 9
160
160
  x: 0
161
161
  - type: histogram
162
162
  show_input: true
@@ -165,8 +165,8 @@ widgets:
165
165
  y:
166
166
  scale: linear
167
167
  x:
168
- search_quantity: results.material.n_elements
169
168
  scale: linear
169
+ search_quantity: results.material.n_elements
170
170
  title: Number of elements
171
171
  layout:
172
172
  xxl:
@@ -200,9 +200,9 @@ widgets:
200
200
  sm:
201
201
  minH: 3
202
202
  minW: 3
203
- h: 4
204
- w: 6
205
- y: 12
203
+ h: 12
204
+ w: 12
205
+ y: 45
206
206
  x: 0
207
207
  - type: terms
208
208
  show_input: true
@@ -240,10 +240,10 @@ widgets:
240
240
  sm:
241
241
  minH: 3
242
242
  minW: 3
243
- h: 4
244
- w: 3
245
- y: 8
246
- x: 9
243
+ h: 9
244
+ w: 12
245
+ y: 27
246
+ x: 0
247
247
  - type: histogram
248
248
  show_input: true
249
249
  autorange: false
@@ -251,10 +251,10 @@ widgets:
251
251
  y:
252
252
  scale: log
253
253
  x:
254
+ scale: linear
254
255
  title: Band gap
255
256
  unit: electron_volt
256
257
  search_quantity: results.properties.electronic.band_gap.value
257
- scale: linear
258
258
  title: Band gap
259
259
  layout:
260
260
  xxl:
@@ -288,10 +288,10 @@ widgets:
288
288
  sm:
289
289
  minH: 3
290
290
  minW: 3
291
- h: 4
292
- w: 6
293
- y: 12
294
- x: 6
291
+ h: 12
292
+ w: 12
293
+ y: 69
294
+ x: 0
295
295
  - type: histogram
296
296
  show_input: true
297
297
  autorange: true
@@ -299,8 +299,8 @@ widgets:
299
299
  y:
300
300
  scale: log
301
301
  x:
302
- search_quantity: results.material.topology.n_atoms
303
302
  title: Number of atoms in the unit cell
303
+ search_quantity: results.material.topology.n_atoms
304
304
  title: Number of atoms
305
305
  layout:
306
306
  xxl:
@@ -334,7 +334,8 @@ widgets:
334
334
  sm:
335
335
  minH: 3
336
336
  minW: 3
337
- h: 4
337
+ h: 12
338
338
  w: 12
339
- y: 16
339
+ y: 57
340
340
  x: 0
341
+