Skip to main content

Python SDK to interact with INTERSECT

Project description

Static Badge CI Release to PyPi PyPI version ReadTheDocs

INTERSECT-SDK

The INTERSECT-SDK is a framework for microservices to integrate themselves into the wider Interconnected Science Ecosystem (INTERSECT).

Please note that this README is currently a work in progress.

What is INTERSECT?

INTERSECT was designed as a specific usecase - as an open federated hardware/software architecture for the laboratory of the future, which connects scientific instruments, robot-controlled laboratories and edge/center computing/data resources to enable autonomous experiments, self-driving laboratories, smart manufacturing, and AI-driven design, discovery and evaluation.

For a high-level overview, please see the architecture website.

What are the core design philosophies of the SDK?

  • Event-driven architecture
  • Support core interaction types: request/response, events, commands, statuses
  • Borrows several concepts from AsyncAPI, and intends to support multiple different protocols. Currently, we support MQTT 5.0 and AMQP 0.9.1, but other protocols will be supported as well.
    • As a general rule, we will not support any protocols which do not support headers, do not allow for asynchronous messaging, or require the microservice itself to "keep alive" multiple connections.
  • Users automatically generate schema from code; schemas are part of the core contract of an INTERSECT microservice, and both external inputs and microservice outputs are required to uphold this contract.

Authors

INTERSECT SDK was created by its contributors.

Citing INTERSECT-SDK

If you are referencing INTERSECT-SDK in a publication, please cite the following paper:

  • Addi Malviya Thakur, Seth Hitefield, Marshall McDonnell, Matthew Wolf, Richard Archibald, Lance Drane, Kevin Roccapriore, Maxim Ziatdinov, Jesse McGaha, Robert Smith, John Hetrick, Mark Abraham, Sergey Yakubov, Greg Watson, Ben Chance, Clara Nguyen, Matthew Baker, Robert Michael, Elke Arenholz & Ben Mintz. Towards a Software Development Framework for Interconnected Science Ecosystems. In: Doug, K., Al, G., Pophale, S., Liu, H., Parete-Koon, S. (eds) Accelerating Science and Engineering Discoveries Through Integrated Research Infrastructure for Experiment, Big Data, Modeling and Simulation. SMC 2022. Communications in Computer and Information Science, vol 1690. Springer, Cham. https://doi.org/10.1007/978-3-031-23606-8_13

On GitHub, you can copy this citation in APA or BibTeX format via the "Cite this repository" button. Or, see the comments in CITATION.cff for the raw BibTeX.

Acknowledgements

The INTERSECT-SDK development has received funding support / sponsorship from the following:

  • Laboratory Directed Research and Development Program of Oak Ridge National Laboratory, managed by UT-Battelle, LLC, for the U. S. Department of Energy.

Project details


Download files

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

Source Distribution

intersect_sdk-0.9.0.tar.gz (108.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

intersect_sdk-0.9.0-py3-none-any.whl (100.8 kB view details)

Uploaded Python 3

File details

Details for the file intersect_sdk-0.9.0.tar.gz.

File metadata

  • Download URL: intersect_sdk-0.9.0.tar.gz
  • Upload date:
  • Size: 108.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.20.1 CPython/3.8.18 Linux/6.11.0-1018-azure

File hashes

Hashes for intersect_sdk-0.9.0.tar.gz
Algorithm Hash digest
SHA256 76413ea6307e58b1e664a391e10cc2e31bcb899c4fee4e5e6f8c640fcebbd244
MD5 ccb1ff756b15793dc9f0d2a91128c286
BLAKE2b-256 264e8671bcef8b222626aad9a615328c8b8823d577919d26f78b095018c0d715

See more details on using hashes here.

File details

Details for the file intersect_sdk-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: intersect_sdk-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 100.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.20.1 CPython/3.8.18 Linux/6.11.0-1018-azure

File hashes

Hashes for intersect_sdk-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6aa3c05d053c54b0f7c314bc8c618952a1c5c5d91427cd86e6c5c4851a2a60f3
MD5 735161505ea542f16472e4de050c653e
BLAKE2b-256 ddb74ce6222b6bffcae9413115298caea7b37c5b3b97f68746a27b4bc06ef9ff

See more details on using hashes here.

Supported by

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