Skip to main content

Tools for implementing and consuming OPTIMADE APIs.

Project description

OPTIMADE Python tools

Latest release Build status Activity
PyPI Version
PyPI - Python Version
OPTIMADE
Build Status
codecov
Heroku App Status
Commit Activity
Last Commit
Contributors

The aim of OPTIMADE is to develop a common API, compliant with the JSON:API 1.0 specification. This is to enable interoperability among databases that contain calculated properties of existing and hypothetical materials.

This repository contains a library of tools for implementing and consuming OPTIMADE APIs using Python. Server implementations can make use of the supported MongoDB (v4) and Elasticsearch (v6) database backends, or plug in a custom backend implementation. The package also contains a server validator tool, which may be called from the shell (optimade-validator) or used as a GitHub Action from optimade-validator-action.

The release history and changelog can be found in the changelog.

Documentation

This document, guides, and the full module API documentation can be found online at https://optimade.org/optimade-python-tools. In particular, documentation of the OPTIMADE API response data models (implemented here with pydantic) can be found online under OPTIMADE Data Models.

Installation

Detailed installation instructions for different use cases (e.g., using the library or running a server) can be found in the installation documentation.

The latest stable version of this package can be obtained from PyPI pip install optimade. The latest development version of this package can be installed from the master branch of this repository git clone https://github.com/Materials-Consortia/optimade-python-tools.

Supported OPTIMADE versions

Each release of the optimade package from this repository only targets one version of the OPTIMADE specification, summarised in the table below.

OPTIMADE API version optimade version
v1.0.0 v0.12.9
v1.1.0 v0.16.0

Contributing and Getting Help

All development of this package (bug reports, suggestions, feedback and pull requests) occurs in the optimade-python-tools GitHub repository. Contribution guidelines and tips for getting help can be found in the contributing notes.

How to cite

If you use this package to access or serve OPTIMADE data, we kindly request that you consider citing the following:

  • Andersen et al., OPTIMADE, an API for exchanging materials data, Sci. Data 8, 217 (2021) 10.1038/s41597-021-00974-z
  • Evans et al., optimade-python-tools: a Python library for serving and consuming materials data via OPTIMADE APIs. Journal of Open Source Software, 6(65), 3458 (2021) 10.21105/joss.03458

Links

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optimade-0.17.0.tar.gz (129.6 kB view details)

Uploaded Source

Built Distribution

optimade-0.17.0-py3-none-any.whl (165.5 kB view details)

Uploaded Python 3

File details

Details for the file optimade-0.17.0.tar.gz.

File metadata

  • Download URL: optimade-0.17.0.tar.gz
  • Upload date:
  • Size: 129.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for optimade-0.17.0.tar.gz
Algorithm Hash digest
SHA256 affe2f7ccfa3d2132893868318f7de5ef34d36a2188187af175e97ff19bf8a4d
MD5 354ef92f565e9d7c8ffa23002bc3e10a
BLAKE2b-256 bdcf1499e0ad707eb0681e50cc288b063d5d26f54640eacd3378c0711edf1636

See more details on using hashes here.

File details

Details for the file optimade-0.17.0-py3-none-any.whl.

File metadata

  • Download URL: optimade-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 165.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for optimade-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e8f4ef42deebb4ed267cccff3386c4655306d03a85f6e4c91f7a9b86c517b012
MD5 d6b3fd469317e2eb210f9fd96580634f
BLAKE2b-256 55626f2c89feee35d124203653c9c526ecdbb3c2648c429a988b61ea39ccdc49

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page