Skip to main content

Flask-based event management orchestration framework

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.1.0.tar.gz (8.9 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.1.0-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pgframx-0.1.0.tar.gz
Algorithm Hash digest
SHA256 617390ea0f17b5f6a204dbd72faf0e2a5868e1ffedc68246039af65ec4aba788
MD5 2ae32cd2c38d7313aada962c076df80b
BLAKE2b-256 7128bc28d7a7ae336a7ac2026d47e25a4f0a0ff37d7e8e0e141dbb57b728ee53

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pgframx-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.4 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ca62d50132270fb3b69f5045fb2ed13afb70d82592f061d9788ee8c5020d332a
MD5 50aac9f9b25474713de801aca131a03c
BLAKE2b-256 49690ee5403a9a01b60c78dfe8cb54b5d108ecd30cfdcf621fb6d4732a7a909e

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