Implement the optimale API 0.10.0
introduction
We committed to implement this until the optimade paper is released in late October.
strategy
- refactor the HTTP/WSGI/Container structure
- allow multiple APIs ideally in one Flask app, in one container behind a single WSGI
- improve the normalization of system to provide all required structure attributes
- build an index of all structures (i.e. section_system)? ~50M >> 6.8M
resources
- OpenAPI spec: https://github.com/Materials-Consortia/optimade-python-tools
- implement with FLASK + OpenAPI: https://github.com/zalando/connexion
- run multiple FLASK in one FLASK: https://flask.palletsprojects.com/en/1.1.x/blueprints/
- use blueprint with connexion: https://github.com/zalando/connexion/issues/512
tasks
-
support multiple api in nomad app -
create a datamodel -
create a normalizer filling that model -
create the endpoints -
lots of tests -
add the missing minor pieces