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.2.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.2-py3-none-any.whl (44.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pgframx-0.2.2.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.2.tar.gz
Algorithm Hash digest
SHA256 a82cfe56de6de505f4541a0b0eef3f5bbce73498e24666e7bef6bbd458c90d60
MD5 268efbf08d4ad98f28f31b86f3703359
BLAKE2b-256 ab7c38a08d5751d36ac510827d7f1c5507678c658a33cdb6ac42151f3f3dcdcc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pgframx-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 44.8 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c5b639af162ae7e99002d80d53c76758fb107cd0f0e2217032ed74537139be0f
MD5 409547c9f985727a9b3a19162f7f3b48
BLAKE2b-256 ba7770b2a088fe36ad328493010a5181cf897f8797a0ab95770b821a2e9deda5

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