Skip to main content

Hydra Framework

Description

Hydra is a framework (actually, currently more of a collection of classes) that provides the basic building blocks to implement data processing software as a graph of nodes while making heavy use of the publisher/subscriber design pattern.

There are four kinds of nodes in each graph:

  • Sources: Nodes which are only publishing data items to subscribing nodes in the graph (e.g. file readers, sockets to read data from, REST endpoints etc).

  • Sinks: Nodes that are only consuming data from publishing nodes. These are the end-points of the graph (e.g. loggers, display widgets, sockets used to send data, REST endpoints, websockets etc).

  • SourceSinks: Nodes that are both consuming and producing data and are graph end-points at the same time (e.g. sockets used to send and receive data).

  • Intermediate nodes: Nodes which are both consuming (subscribers) and publishing data at the same time. Such nodes can be used for various purposes such as buffering, examining, transforming, filtering data etc.

The available classes are broken down to the following modules:

  • hydra_core: Contains the basic classes from which graphs are built.
  • hydra_common: Classes for commonly used node types (e.g. queues).
  • hydra_net: TCP and UDP SourceSinks.
  • hydra_rest: REST API endpoint node (uses Flask and its built-in development server).

Installation

Install with pip:

pip install hydra-framework

Examples

See example.py.

TODO

  • Implement the following modules:
    • hydra_websocket: Module that provides REST and websocket sinks and sources.
    • hydra_gui_qt5: Module that provides GUI components for QT5 (Python for QT).
  • Add a REST client node implementation based on the requests module.

Requirements

  • Python 3.x
  • Flask (for hydra-rest)

License

MIT license

Metadata

Release files for hydra-framework 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hydra-framework 0.2.2
File Size Uploaded Provenance Actions
hydra_framework-0.2.2.tar.gz 9.1 kB Without provenance Details for hydra_framework-0.2.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for hydra-framework 0.2.2
File Interpreter ABI Platform Actions
hydra_framework-0.2.2-py3-none-any.whl Python 3 none any Details for hydra_framework-0.2.2-py3-none-any.whl

Total release size: 22.6 kB

Release files / hydra_framework-0.2.2.tar.gz

Download URL hydra_framework-0.2.2.tar.gz
Size 9.1 kB
Tags Source
SHA-256 checksum
How to use checksums
441eb2f80bc248e3fe7913db4f45b4e47d7ecbfc9a93d1851467c80819501ddd
BLAKE2b-256 checksum
How to use checksums
9ae5f7f36ffe2f488f483f9f149ac0741c2044f15cb886b9bc9340631f59b722
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / hydra_framework-0.2.2-py3-none-any.whl

Download URL hydra_framework-0.2.2-py3-none-any.whl
Size 13.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0982d70854af01223c59f31f50495a910ea309f457bed5203085cc82be3f4318
BLAKE2b-256 checksum
How to use checksums
be9a21e008ceadb5a122ef5e30c8f809b1826011dda084d658d949dbd2be657a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for hydra-framework 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.2 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page