Skip to main content

z4j - open-source control plane for Python task infrastructure

Project description

z4j

Open-source control plane for Python task infrastructure. License: AGPL v3 - commercial license available (contact licensing@z4j.com). Status: v1.0.1 (production-ready).

A modern, self-hosted alternative to Flower / Prometheus-only task monitoring. Monitor, manage, and control Celery / RQ / Dramatiq / Huey / arq / TaskIQ / APScheduler workers, tasks, schedules, and queues from a single dashboard.

This is the umbrella package. Installing z4j gets you the flagship experience (brain + dashboard + SQLite) plus a clean way to layer in adapter engines via extras.

Quick start

pip install z4j

# Generate the two required HMAC signing secrets
export Z4J_SECRET=$(python -c "import secrets; print(secrets.token_urlsafe(48))")
export Z4J_SESSION_SECRET=$(python -c "import secrets; print(secrets.token_urlsafe(48))")

z4j-brain migrate upgrade head
z4j-brain serve

On first run, z4j-brain serve prints a one-time setup URL (http://localhost:7700/setup?token=...). Open it in your browser to create the admin account, then you land on the dashboard at http://localhost:7700/.

See z4j-brain for the complete configuration reference (defaults, retention, rate limits, Argon2 cost, etc.).

Install shapes

# Just the brain (dashboard + SQLite)
pip install z4j

# Brain + Celery adapter (pulls z4j-celery + z4j-celerybeat)
pip install "z4j[celery]"

# Brain + Django + Celery
pip install "z4j[django,celery]"

# Switch the brain to PostgreSQL
pip install "z4j[postgres]"

# Every adapter engine at once (useful for CI)
pip install "z4j[agents]"

# The kitchen sink
pip install "z4j[all]"

Which adapter extras exist

Extra Installs For
[celery] z4j-celery + z4j-celerybeat Celery workers + beat scheduler
[django] z4j-django Django task telemetry
[flask] z4j-flask Flask background tasks
[fastapi] z4j-fastapi FastAPI BackgroundTasks
[rq] z4j-rq + z4j-rqscheduler RQ workers + rq-scheduler
[dramatiq] z4j-dramatiq Dramatiq actors
[huey] z4j-huey + z4j-hueyperiodic Huey + periodic tasks
[arq] z4j-arq + z4j-arqcron arq workers + cron
[taskiq] z4j-taskiq + z4j-taskiqscheduler TaskIQ + scheduler
[apscheduler] z4j-apscheduler APScheduler jobs
[bare] z4j-bare Bare (no engine) agents

Which umbrella extras exist

Extra Installs For
[postgres] z4j-brain[postgres] (asyncpg) Production PostgreSQL backend
[agents] every engine adapter Full-stack dev / CI testing
[all] [agents,postgres] Kitchen sink

Agent-only installs (no AGPL in your app's venv)

If you're adding z4j to an existing Django / Celery / Flask application and you need Apache-2.0-only dependencies (no AGPL in your proprietary code's venv), skip the umbrella and install the standalone adapter packages directly:

pip install z4j-core z4j-django    # SDK + Django adapter
pip install z4j-celery             # SDK + Celery adapter
pip install z4j-rq                 # SDK + RQ adapter

Every adapter package is Apache 2.0 and depends only on z4j-core (also Apache 2.0). Point Z4J_BRAIN_URL at a running brain and the adapter will start streaming telemetry.

Licensing

z4j (this umbrella package) is AGPL v3 because it installs z4j-brain by default. If that is incompatible with your policy, use the agent-only install recipe above.

  • Agent packages (z4j-core, z4j-celery, z4j-django, ...): Apache 2.0. Free for proprietary use.
  • Brain server (z4j-brain): AGPL v3. Commercial license available - contact licensing@z4j.com.

The split is deliberate. The brain is the network service operators run; the agents are the client libraries integrators embed. AGPL protects the server; Apache makes integration frictionless.

Documentation

Complete documentation, tutorials, API reference, deployment guides: https://z4j.dev.

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

z4j-1.0.1.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

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

z4j-1.0.1-py3-none-any.whl (16.3 kB view details)

Uploaded Python 3

File details

Details for the file z4j-1.0.1.tar.gz.

File metadata

  • Download URL: z4j-1.0.1.tar.gz
  • Upload date:
  • Size: 21.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.8

File hashes

Hashes for z4j-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a85b8c197be6e7123aaebeb1385d599d864aba2dbcfb4164e512abc75af6f77f
MD5 bd130ba9589bf3814b90dae2d061f6cf
BLAKE2b-256 68d3c35c8e832c49cf3a261c2ed156206ea1c65266b9225196c781268f630daf

See more details on using hashes here.

File details

Details for the file z4j-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: z4j-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 16.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.8

File hashes

Hashes for z4j-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 22b6d973c4e8ed98f1a5bb7a36a8862ebc4c6008f3a8a43c2585b25b69d54705
MD5 dd18248f9b4c663d9842b766cc6b495a
BLAKE2b-256 a3d11aeed9713f2cf7b5227097c20ac19eb2a797f971858e2a5d27a14042cd04

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