An interactive dashboard for monitoring and managing Taskiq tasks.
Project description
taskiq-dashboard
Broker-agnostic admin dashboard for Taskiq.
Live demo of UI: https://taskiq-dashboard.danfimov.com/
Installation
To install taskiq-dashboard package, run the following command:
pip install taskiq-dashboard
To pull the Docker image with taskiq-dashboard application , run the following command:
docker pull ghcr.io/danfimov/taskiq-dashboard:latest
Usage
Run with code
-
Import and connect middleware to your Taskiq broker:
from taskiq_dashboard import DashboardMiddleware broker = ( RedisStreamBroker( url=redis_url, queue_name="my_lovely_queue", ) .with_result_backend(result_backend) .with_middlewares( DashboardMiddleware( url="http://localhost:8000", # the url to your taskiq-dashboard instance api_token="supersecret", # secret for accessing the dashboard API broker_name="my_worker", # it will be worker name in the dashboard ) ) )
-
Run taskiq-dashboard with the following code:
from taskiq_dashboard import TaskiqDashboard from your_project.broker import broker # your Taskiq broker instance def run_admin_panel() -> None: app = TaskiqDashboard( api_token='supersecret', # the same secret as in middleware storage_type='postgresql', # or 'sqlite' database_dsn="postgresql://taskiq-dashboard:look_in_vault@postgres:5432/taskiq-dashboard", broker=broker, # pass your broker instance here to enable additional features (optional) host='0.0.0.0', port=8000, ) app.run() if __name__ == '__main__': run_admin_panel()
Run inside docker container
You can use this docker-compose.yml file to run taskiq-dashboard along with PostgreSQL:
services:
postgres:
image: postgres:18
environment:
POSTGRES_USER: taskiq-dashboard
POSTGRES_PASSWORD: look_in_vault
POSTGRES_DB: taskiq-dashboard
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
dashboard:
image: ghcr.io/danfimov/taskiq-dashboard:latest
depends_on:
- postgres
environment:
TASKIQ_DASHBOARD__STORAGE_TYPE: postgres
TASKIQ_DASHBOARD__POSTGRES__HOST: postgres
TASKIQ_DASHBOARD__API__TOKEN: supersecret
ports:
- "8000:8000"
volumes:
postgres_data:
You can also run taskiq-dashboard with SQLite by using the following docker-compose.yml file:
services:
dashboard:
image: ghcr.io/danfimov/taskiq-dashboard:latest
environment:
TASKIQ_DASHBOARD__STORAGE_TYPE: sqlite
TASKIQ_DASHBOARD__SQLITE__DSN: sqlite+aiosqlite:///taskiq_dashboard.db
TASKIQ_DASHBOARD__API__TOKEN: supersecret
volumes:
- taskiq_dashboard_sqlite:/app/taskiq-dashboard.db
ports:
- "8000:8000"
volumes:
taskiq_dashboard_sqlite:
Configuration
Taskiq-dashboard can run with PostgreSQL or SQLite.
You can configure it using environment variables or by passing parameters directly to the TaskiqDashboard class. For a full list of configuration options, please refer to the Configuration article in documentation.
Development
For development and contributing instructions, please refer to the Contribution guide in documentation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file taskiq_dashboard-0.4.1.tar.gz.
File metadata
- Download URL: taskiq_dashboard-0.4.1.tar.gz
- Upload date:
- Size: 74.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c281e117626f5838d6ee53cc4b0d090f583472a52b38f40a9926042ef35bb0cf
|
|
| MD5 |
f72f19a2cbc16e1ba87d47d263178c92
|
|
| BLAKE2b-256 |
2ea4b99b5927b5a212470e23fb9b3debfa94c7709977ff31631b50fb3ae5a404
|
File details
Details for the file taskiq_dashboard-0.4.1-py3-none-any.whl.
File metadata
- Download URL: taskiq_dashboard-0.4.1-py3-none-any.whl
- Upload date:
- Size: 94.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a0bafb19521db1ee8ca459b19e30b8e751b07fa6103900488f66dd2501d0781
|
|
| MD5 |
54417ae57b734ea9a7b956e50a98d444
|
|
| BLAKE2b-256 |
c8b2b5118a391810bbc0bccd7227b5578037b630ec3cec4041d5c7bc781b39d1
|