README.md 5.46 KB
Newer Older
Markus Scheidgen's avatar
Markus Scheidgen committed
1
2
3
[![pipeline status](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/badges/master/pipeline.svg)](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/commits/master)
[![coverage report](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/badges/master/coverage.svg)](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-FAIR/commits/master)

4
5
6
7
8
9
10
11
12
This project implements the new *nomad@FAIRDI* infrastructure. Contrary to its NOMAD CoE
predecessor, it implements the NOMAD Repository and NOMAD Archive functionality within
a single cohesive application. This project provides all necessary artifacts to develop,
test, deploy, and operate the NOMAD Respository and Archive, e.g. at
[https://repository.nomad-coe.eu/app/gui](https://repository.nomad-coe.eu/app/gui).

In the future, this project's aim is to integrate more NOMAD CoE components, like the NOMAD
Encyclopedia and NOMAD Analytics Toolkit, to fully integrate NOMAD with one GUI and consistent
APIs. Furthermore, this projects aims at establishing NOMAD as a distributed platform for
13
14
15
16
17
18
material science data sharing and management. This includes the on-site deployment of
NOMAD as a standalone service (*oasis*), the federated use of NOMAD through a
serious of full and partial *mirrors*, the integration of 3rd party material science
databases (i.e. [Aflow](http://www.aflow.org/), [OQMD](http://oqmd.org/),
[Materials Project](https://materialsproject.org/)), and support for open APIs and
standards like the [Optimade](http://www.optimade.org/) API.
19

20

21
## Getting started
22

23
24
25
Read the [docs](https://repository.nomad-coe.eu/app/docs). The documentation is also part
of the source code. It covers aspects like introduction, architecture, development setup/deployment,
contributing, and API reference.
26

Markus Scheidgen's avatar
Markus Scheidgen committed
27
28

## Change log
29

Markus Scheidgen's avatar
Markus Scheidgen committed
30
Omitted versions are plain bugfix releases with only minor changes and fixes.
Markus Scheidgen's avatar
Markus Scheidgen committed
31

32
33
34
35
### v0.7.7
- Shows dataset contents with embargo data, but hides the entry details (raw-files, archive)
- minor bugfixes

36
### v0.7.5
Markus Scheidgen's avatar
Markus Scheidgen committed
37
- AFLOWLIB prototypes (archive)
38
39
- primitive label search
- improved search performance based on excluded fields
Markus Scheidgen's avatar
Markus Scheidgen committed
40
- improved logs
41
42
- minor bugfixes

43
44
45
46
47
48
49
50
### v0.7.3
- fixed aborted raw-file downloads
- improved representation of data availability (staging, embargo, public) in GUI
- user data uploads ordered by upload time
- user data shows uploads with name
- configurable embargo period length
- minor bugfixes

51
52
53
54
### v0.7.2
- API curl, Python, and results for entries and search queries shown in the GUI
- minor bugfixes

Markus Scheidgen's avatar
Markus Scheidgen committed
55
56
57
58
### v0.7.1
- Download of archive files based on search queries
- minor bugfixes

Markus Scheidgen's avatar
Markus Scheidgen committed
59
### v0.7.0
60
61
- User metadata editing and datasets with DOIs
- Revised GUI lists (entries, grouped entries, datasets, uploads)
62
- Keycloak based user management
63
64
- Rawfile preview
- no dependencies with the old NOMAD CoE Repository
65
66
67
68
69
70
71

### v0.6.2
- GUI performance enhancements
- API /raw/query endpoint takes file pattern to further filter download contents and
  strips potential shared path prefixes for a cleaner download .zip
- Stipped common path prefixes in raw file downloads
- minor bugfixes
72

73
### v0.6.0
Markus Scheidgen's avatar
Markus Scheidgen committed
74
- GUI URL, and API endpoint that resolves NOMAD CoE legacy PIDs
75
76
- Support for datasets in the GUI
- more flexible search python module and repo API
Markus Scheidgen's avatar
Markus Scheidgen committed
77
- support for external_id
78
- support for code-based raw_id
79
- Optimade API 0.10.0
80
- GUI supports Optimade filter query and other quantities
81
82
- minor bugfixes

83
84
85
86
87
### v0.5.2
- allows to download large files over longer time period
- streamlined deployment without API+GUI proxy
- minor bugfixes

Markus Scheidgen's avatar
Markus Scheidgen committed
88
### v0.5.1
Markus Scheidgen's avatar
Markus Scheidgen committed
89
- integrated parsers Dmol3, qbox, molcas, fleur, and onetep
90
- API endpoint for query based raw file download
Markus Scheidgen's avatar
Markus Scheidgen committed
91
- improvements to admin cli: e.g. clean staging files, reprocess uploads based on codes
92
- improved error handling in the GUI
Markus Scheidgen's avatar
Markus Scheidgen committed
93
- lots of parser bugfixes
Markus Scheidgen's avatar
Markus Scheidgen committed
94
95
- lots of minor bugfixes

96
### v0.5.0
97
98
The first production version of nomad@fairdi as the upload API and gui for NOMAD
- Production ready software and deployments (term agreements, better GUI docs)
99
100
101
- Raw file API with support to list directories. This replaces the `files` calculation
  metadata key. It was necessary due to arbitrary large lists of *auxfiles* in some
  calculations.
102
- Search interface that contains all features of the CoE Repository GUI.
103
104
105
- Refactored search API that allows to search for entries (paginated + scroll),
  metrics based on quantity aggregations (+ paginated entries), quantity aggregations
  with all values via `after` key (+ paginated entries).
106
107
108
- reprocessing of published results (e.g. after parser/normalizer improvements)
- mirror functionality
- refactored command line interface (CLI)
109
- potential GUI user tracking capabilities
110
- many minor bugfixes
111

112
113
114
115
### v0.4.7
- more migration scripts
- minor bugfixes

116
117
118
119
120
121
### v0.4.6
- admin commands to directly manipulate upload data
- additional migration scripts
- fixed system normalizer to understand indexed atom labels correctly
- many minor bugfixes

122
123
124
125
126
### v0.4.5
- improved uploads view with published uploads
- support for publishing to the existing nomad CoE repository
- many minor bugfixes

127
### v0.4.4
128
- improved GUI navigation
129
130
- support for multiple domains
- info API endpoint
Markus Scheidgen's avatar
Markus Scheidgen committed
131
- metainfo browser
Markus Scheidgen's avatar
Markus Scheidgen committed
132
- support for latest exciting version
Markus Scheidgen's avatar
Markus Scheidgen committed
133
- bugfixes in system normalization
Markus Scheidgen's avatar
Markus Scheidgen committed
134
- many minor bugfixes
135

136
137
138
139
140
141
142
### v0.4.3
- more flexible celery routing
- config via nomad.yml
- repo_db can be disabled
- publishing of calculations with failed processing
- cli for managing running processing tasks

Markus Scheidgen's avatar
Markus Scheidgen committed
143
144
145
### v0.4.2
- bugfixes regarding the migration
- better migration configurability and reproducibility
Markus Scheidgen's avatar
Markus Scheidgen committed
146
- scales to multi node kubernetes deployment