progressbox


Nameprogressbox JSON
Version 0.1.0a2 PyPI version JSON
download
home_pageNone
SummaryStage-aware progress monitoring for parallel Python jobs
upload_time2025-09-05 00:25:40
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT
keywords progress parallel monitoring multiprocessing joblib
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ProgressBox 📦

> Stage-aware progress monitoring for parallel Python jobs

![Python Version](https://img.shields.io/badge/python-3.9%2B-blue)
![License](https://img.shields.io/badge/license-MIT-green)
![Status](https://img.shields.io/badge/status-alpha-orange)

## Features

- 🎯 **Stage-aware tracking** - Monitor different stages of computation with timing analysis
- ⚡ **True parallelism** - Built for multiprocessing, threading, and joblib
- 📊 **Rich statistics** - ETA, throughput, stage timing breakdown
- 🖼️ **Beautiful display** - Fixed-width Unicode box with perfect alignment
- 🔧 **Production ready** - Logging, snapshots, error handling

## Installation

```bash
pip install progressbox
```

## Quick Start

```python
import progressbox as pbox

# Simple usage
config = pbox.Config(total=100, n_workers=4)
with pbox.Progress(config) as progress:
    for i in range(100):
        progress.task_start(i, worker=i % 4)
        progress.task_update(i, stage="processing")
        # ... do work ...
        progress.task_finish(i)
```

## Joblib Integration

```python
from joblib import Parallel, delayed
import progressbox as pbox

# Your existing joblib code, now with progress!
results = pbox.adapters.joblib_progress(
    items,
    process_func,
    n_jobs=6,
    config=pbox.Config(total=len(items))
)
```

## Documentation

See [full documentation](https://progressbox.readthedocs.io) for more examples and API reference.

## License

MIT License - see LICENSE file for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "progressbox",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "progress, parallel, monitoring, multiprocessing, joblib",
    "author": null,
    "author_email": "Zaafir Hasan <zaafirfhasan@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/09/82/ceb4da402ab23c0c191ac1112df9bc761510bb16a21bfc1fc2bc312b2143/progressbox-0.1.0a2.tar.gz",
    "platform": null,
    "description": "# ProgressBox \ud83d\udce6\r\n\r\n> Stage-aware progress monitoring for parallel Python jobs\r\n\r\n![Python Version](https://img.shields.io/badge/python-3.9%2B-blue)\r\n![License](https://img.shields.io/badge/license-MIT-green)\r\n![Status](https://img.shields.io/badge/status-alpha-orange)\r\n\r\n## Features\r\n\r\n- \ud83c\udfaf **Stage-aware tracking** - Monitor different stages of computation with timing analysis\r\n- \u26a1 **True parallelism** - Built for multiprocessing, threading, and joblib\r\n- \ud83d\udcca **Rich statistics** - ETA, throughput, stage timing breakdown\r\n- \ud83d\uddbc\ufe0f **Beautiful display** - Fixed-width Unicode box with perfect alignment\r\n- \ud83d\udd27 **Production ready** - Logging, snapshots, error handling\r\n\r\n## Installation\r\n\r\n```bash\r\npip install progressbox\r\n```\r\n\r\n## Quick Start\r\n\r\n```python\r\nimport progressbox as pbox\r\n\r\n# Simple usage\r\nconfig = pbox.Config(total=100, n_workers=4)\r\nwith pbox.Progress(config) as progress:\r\n    for i in range(100):\r\n        progress.task_start(i, worker=i % 4)\r\n        progress.task_update(i, stage=\"processing\")\r\n        # ... do work ...\r\n        progress.task_finish(i)\r\n```\r\n\r\n## Joblib Integration\r\n\r\n```python\r\nfrom joblib import Parallel, delayed\r\nimport progressbox as pbox\r\n\r\n# Your existing joblib code, now with progress!\r\nresults = pbox.adapters.joblib_progress(\r\n    items,\r\n    process_func,\r\n    n_jobs=6,\r\n    config=pbox.Config(total=len(items))\r\n)\r\n```\r\n\r\n## Documentation\r\n\r\nSee [full documentation](https://progressbox.readthedocs.io) for more examples and API reference.\r\n\r\n## License\r\n\r\nMIT License - see LICENSE file for details.\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Stage-aware progress monitoring for parallel Python jobs",
    "version": "0.1.0a2",
    "project_urls": null,
    "split_keywords": [
        "progress",
        " parallel",
        " monitoring",
        " multiprocessing",
        " joblib"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d2b24f7477bb0a12a72520c27569854b23b3c250be7283915745a7a2e291070d",
                "md5": "ce915242b3f7c3e5ae9c06613f66703f",
                "sha256": "65e6f2784ae875a8381a2951e428b2c9e6e9ba8173c00b151ce1d02ba9ab836a"
            },
            "downloads": -1,
            "filename": "progressbox-0.1.0a2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ce915242b3f7c3e5ae9c06613f66703f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 56880,
            "upload_time": "2025-09-05T00:25:39",
            "upload_time_iso_8601": "2025-09-05T00:25:39.130193Z",
            "url": "https://files.pythonhosted.org/packages/d2/b2/4f7477bb0a12a72520c27569854b23b3c250be7283915745a7a2e291070d/progressbox-0.1.0a2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0982ceb4da402ab23c0c191ac1112df9bc761510bb16a21bfc1fc2bc312b2143",
                "md5": "e9a6a3363106087813d86777fdeec419",
                "sha256": "8852701a591a407f550ac6757d0c36061dfd52c574d541a830c0c2c69c2975ea"
            },
            "downloads": -1,
            "filename": "progressbox-0.1.0a2.tar.gz",
            "has_sig": false,
            "md5_digest": "e9a6a3363106087813d86777fdeec419",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 50470,
            "upload_time": "2025-09-05T00:25:40",
            "upload_time_iso_8601": "2025-09-05T00:25:40.245273Z",
            "url": "https://files.pythonhosted.org/packages/09/82/ceb4da402ab23c0c191ac1112df9bc761510bb16a21bfc1fc2bc312b2143/progressbox-0.1.0a2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-05 00:25:40",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "progressbox"
}
        
Elapsed time: 2.06947s