Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

celery-manager

A dashboard and control API for Celery background tasks — for any Django, Flask, or FastAPI project that already uses Celery.

CI Python 3.10–3.13 License: MIT Status: alpha

Point it at your existing Celery app and you get a web UI and a REST API to see what your tasks are doing, act on them, and — the feature this project exists for — pause or cancel a single future occurrence of a periodic task without touching your beat schedule or restarting anything.

What you get

  • Task visibility — every task run (decorated or not) with status, args, worker, queue, timings, exceptions, and full tracebacks.
  • Full run history — browse past runs beyond the newest page, search by task name, task ID, or args/kwargs content, and filter by status and date range.
  • Live progress — call celery_manager.report_progress(current, total, message) inside a task body and watch the bar move, with elapsed time and a projected finish while the task is still running.
  • Log capture — logging output from inside a task body (and print() too, in a real worker — see why), attached to that run and readable in the dashboard.
  • Control — start, cancel/terminate, retry, and bulk retry, from the UI or the API. Retries keep their lineage, so you can walk the chain.
  • Per-occurrence schedule control — skip or cancel one upcoming run of a periodic task, and see it stay paused.
  • Audit log — who did what, when, for every control action.
  • Light and dark themes — an explicit per-user choice, not just whatever the OS says.
  • Brandable — set the product name, accent colour, and logo from a settings screen; it applies for everyone on the deployment.
  • Built-in auth — bcrypt-hashed users and signed session cookies.
  • No Node toolchain required — the React dashboard ships prebuilt inside the Python package.

Install

celery-manager is an alpha, so pass --pre to pip:

pip install --pre celery-manager

With extras:

pip install --pre "celery-manager[standalone]"   # adds uvicorn
pip install --pre "celery-manager[flask]"        # adds Flask and a2wsgi

Alternatively, install a tagged release straight from git:

pip install "git+https://github.com/Pythondeveloper6/celery-manager.git@v0.1.0a2"

(Extras with git: "celery-manager[standalone] @ git+https://github.com/Pythondeveloper6/celery-manager.git@v0.1.0a2".)

Optional extras:

  • standalone — pulls in uvicorn, to run the dashboard on its own rather than mounting it into an ASGI app you already serve.
  • flask — pulls in Flask and a2wsgi, to mount the dashboard in a Flask (WSGI) app; see Integrating with your app.

Wire it up

celery-manager runs in two places, and both need configuring — this is the step most easily missed:

from celery_manager.config import CeleryManagerConfig

config = CeleryManagerConfig(
    celery_app=your_celery_app,
    db_url="sqlite:///celery_manager.db",   # any SQLAlchemy URL
    secret_key="a-real-secret-in-production",
)

1. The dashboard process — build the ASGI app and serve or mount it:

from celery_manager.api.app import create_app

app, _ = create_app(config)   # then: uvicorn your_module:app

2. The Celery worker process — where @track-decorated tasks actually run:

import celery_manager

celery_manager.setup(config)   # at import time, in your tasks module

@app.task(bind=True)
@celery_manager.track(schedule_name="send-report-every-2-hours")
def send_report(self):
    ...

Then run the events listener alongside your worker and beat, so the dashboard sees every task rather than only the decorated ones:

celery-manager events --celery-app your_module:your_celery_app \
                      --db-url sqlite:///celery_manager.db

The listener sees nothing unless workers emit events: set worker_send_task_events = True and task_send_sent_event = True (or run the worker with -E). See Required Celery settings.

Two things that stop people on a first run, both covered in the Quickstart: there is no default account, so you have to create one (celery_manager.auth.users.create_user); and on plain HTTP you need cookie_secure=False, or you will log in successfully and then immediately appear logged out.

Documentation

Full documentation lives in docs/ (an MkDocs Material site — run mkdocs serve after pip install -e ".[docs]"):

Changes between versions — including what breaks for development builds — are in CHANGELOG.md.

A complete runnable Django example is in examples/django_demo/.

Requirements

Python 3.10+, Celery 5.x. Storage defaults to SQLite with zero configuration and swaps to Postgres/MySQL/anything SQLAlchemy supports via db_url.

Status

This is the first alpha, 0.1.0a2. It is feature-complete for the v1 scope, but APIs may change before 0.1.0. See plan.md for the implementation history and the backlog of known gaps and planned follow-ups.

License

MIT — see LICENSE.

Metadata

Release files for celery-manager 0.1.0a2

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

Source distribution (sdist)

Source distribution for celery-manager 0.1.0a2
File Size Uploaded Provenance
celery_manager-0.1.0a2.tar.gz 889.8 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for celery-manager 0.1.0a2
File Interpreter ABI Platform
celery_manager-0.1.0a2-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / celery_manager-0.1.0a2.tar.gz

Download URL celery_manager-0.1.0a2.tar.gz
Size 889.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d9bd294d232d282450a6e4e392781110c237e2af3208de70635a4d1a57ec2445
BLAKE2b-256 checksum
How to use checksums
33f3771710730bb5f85c5b0ac25cb958fd988b82fd32ab06df261890e91eebda
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Release files / celery_manager-0.1.0a2-py3-none-any.whl

Download URL celery_manager-0.1.0a2-py3-none-any.whl
Size 405.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
66708202c6598df273567e17e8fbd14387b7d3c40be3feef83a04e5b43f309e9
BLAKE2b-256 checksum
How to use checksums
cf3fc82df2ff751aab9f50b8edb6b1745213b3c05ceabb798380a4b546247027
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Security for celery-manager 0.1.0a2

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for celery_manager-0.1.0a2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

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.

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