跳转到主要内容

实现和消费OPTIMADE API的工具。

项目描述

OPTIMADE Python 工具

JOSS DOI

最新版本构建状态活动
PyPI version
PyPI - Python Version
OPTIMADE version
Build Status
Docs
Codecov
Commit Activity
Last Commit
Contributors

OPTIMADE 的目标是开发一个符合 JSON:API 1.0 规范的通用 API。这是为了实现服务于现有和假设材料晶体结构和计算属性的数据库之间的互操作性。

此存储库包含一个库,用于使用 Python 实现 OPTIMADE APIs

  1. 为所有 OPTIMADE 条目类型 和端点响应提供 pydantic 数据模型,并为 OPTIMADE 过滤语言提供 Lark EBNF 语法实现。
  2. 适配器将 OPTIMADE 数据映射到许多常用的原子级 Python 框架(例如,pymatgenASE)和晶体学文件类型(例如,CIF),使用 optimade.adapters 模块。
  3. 一个可配置的参考服务器实现,可以默认使用 MongoDB 或 Elasticsearch 数据库后端,并可以轻松扩展到其他后端。在 演示网站 上试用!服务器使用的 OpenAPI 模式用于构建 OPTIMADE 模式 网站。
  4. 一个 OPTIMADE 客户端optimade-get),可以从命令行或 Python 代码中查询多个 OPTIMADE 提供商,并使用给定的过滤器并发地进行。
  5. 一个模糊 API 验证工具,可以从 shell 中调用(optimade-validator)或作为 optimade-validator-action 的 GitHub Action 使用;此验证器用于构建 提供商仪表板

文档

此文档、指南和完整模块 API 文档可在 https://optimade.org/optimade-python-tools 上找到。特别是,可以在 OPTIMADE 数据模型 下找到 OPTIMADE API 响应数据模型的文档(在这里使用 pydantic 实现)。

发布历史和更改日志可在 更改日志 中找到。

安装

针对不同用例的详细安装说明(例如,使用库或运行服务器)可在 安装文档 中找到。

此软件包的最新稳定版本可以从 PyPI 获取。

pip install optimade

此包的最新开发版本可以从该存储库的main分支获取

git clone https://github.com/Materials-Consortia/optimade-python-tools

支持的OPTIMADE版本

此存储库中每个版本的optimade包仅针对OPTIMADE规范的一个版本,总结在下表中。

OPTIMADE API版本 optimade要求
v1.0.0 optimade≤0.12.9
v1.1.0 optimade~=0.16

贡献和获取帮助

此包的所有开发(错误报告、建议、反馈和拉取请求)均发生在optimade-python-tools GitHub存储库中。贡献指南和获取帮助的技巧可以在贡献说明中找到。

如何引用

如果您使用此包访问或提供OPTIMADE数据,我们恳请您考虑引用以下内容

  • Andersen 等人,OPTIMADE,一种材料数据的API,Sci. Data 8,217 (2021) 10.1038/s41597-021-00974-z
  • Evans 等人,optimade-python-tools:一个用于通过OPTIMADE API提供和消费材料数据的Python库。《开源软件杂志》6(65),3458 (2021) 10.21105/joss.03458

链接

项目详情


发布历史 发布通知 | RSS源

下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

optimade-1.1.3.tar.gz (184.8 kB 查看哈希值)

上传时间

构建分布

optimade-1.1.3-py3-none-any.whl (232.4 kB 查看哈希值)

上传时间 Python 3

由以下机构支持