Skip to main content

Flask-based event management orchestration framework with scaffold generator

Project description

pgframx

Flask-based event management orchestration framework.

Orchestrate events, not chaos.

Install

pip install pgframx

Quickstart

from pgframx import Orchestrator, create_app

orc = Orchestrator()

@orc.on("order.placed")
def handle_order(event):
    print(f"Order received: {event.data}")

app = create_app(orc)

if __name__ == "__main__":
    app.run(port=5050)

CLI

pgframx init        # Create a new project scaffold in current directory
pgframx run         # Start the Flask orchestrator server
pgframx emit <event> --data '{}'  # Emit event from CLI to running server
pgframx list events               # List all registered events
pgframx list listeners            # List all registered listeners
pgframx schedule list             # List scheduled cron/interval jobs
pgframx schedule add <event> --interval 10  # Schedule recurring events
pgframx schedule remove <job_id>  # Remove scheduled jobs

Features

  • Decorators: Event registration, before hooks, and after hooks.
  • Wildcard matching: Match events using wildcards (user.*).
  • Scheduling: Chronological/interval-based triggers via APScheduler.
  • REST API: Mountable blueprints exposing route endpoints for events, listeners, and health checks.
  • Dynamic Webhooks: Register webhooks dynamically via the REST API or CLI.
  • Full CLI: Manage your event broker process from the terminal.

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

pgframx-0.2.1.tar.gz (14.8 MB view details)

Uploaded Source

Built Distribution

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

pgframx-0.2.1-py3-none-any.whl (44.0 kB view details)

Uploaded Python 3

File details

Details for the file pgframx-0.2.1.tar.gz.

File metadata

  • Download URL: pgframx-0.2.1.tar.gz
  • Upload date:
  • Size: 14.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for pgframx-0.2.1.tar.gz
Algorithm Hash digest
SHA256 a75a50c7fcdd59d879e6c712d8a6c9ea4146d9ad95b25a8301883ebbcb5d2626
MD5 171995d237cc3028d4d9de8fed4f9860
BLAKE2b-256 ecaae405e3de6dc678f39260a88180f2529e96aab71e0696373b207643b4220d

See more details on using hashes here.

File details

Details for the file pgframx-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pgframx-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 44.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for pgframx-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7c49533ea6b9e95cd05ff1efa5226adda8e21afadef2b6bdab333e3dd5f47cd4
MD5 7c14475323199aa919826bc7207d38b7
BLAKE2b-256 9685a9e22280f63dbb91351f4ca934af19f0c2599c57029e7db1ba3f37fe208f

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