{"id":15020394,"url":"https://github.com/bogdanp/dramatiq","last_synced_at":"2025-05-13T21:03:32.272Z","repository":{"id":38291151,"uuid":"92827980","full_name":"Bogdanp/dramatiq","owner":"Bogdanp","description":"A fast and reliable background task processing library for Python 3.","archived":false,"fork":false,"pushed_at":"2025-05-02T02:48:56.000Z","size":2614,"stargazers_count":4599,"open_issues_count":71,"forks_count":330,"subscribers_count":58,"default_branch":"master","last_synced_at":"2025-05-06T20:23:47.403Z","etag":null,"topics":["distributed-lock","python","rabbit","redis","task","task-manager","task-runner","task-scheduler"],"latest_commit_sha":null,"homepage":"https://dramatiq.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bogdanp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"Bogdanp"}},"created_at":"2017-05-30T11:55:29.000Z","updated_at":"2025-05-06T12:02:01.000Z","dependencies_parsed_at":"2023-11-06T07:25:24.645Z","dependency_job_id":"4cb8f9da-f169-467e-adf2-072c3af08a11","html_url":"https://github.com/Bogdanp/dramatiq","commit_stats":{"total_commits":1031,"total_committers":95,"mean_commits":"10.852631578947369","dds":0.4161008729388943,"last_synced_commit":"7a51d61fab78d4b3381f528978bff4a9d56e98ea"},"previous_names":[],"tags_count":67,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bogdanp%2Fdramatiq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bogdanp%2Fdramatiq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bogdanp%2Fdramatiq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bogdanp%2Fdramatiq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bogdanp","download_url":"https://codeload.github.com/Bogdanp/dramatiq/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254028000,"owners_count":22002151,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["distributed-lock","python","rabbit","redis","task","task-manager","task-runner","task-scheduler"],"created_at":"2024-09-24T19:55:01.711Z","updated_at":"2025-05-13T21:03:32.223Z","avatar_url":"https://github.com/Bogdanp.png","language":"Python","readme":"\u003cimg src=\"https://dramatiq.io/_static/logo.png\" align=\"right\" width=\"131\" /\u003e\n\n# dramatiq\n\n[![Build Status](https://github.com/Bogdanp/dramatiq/workflows/CI/badge.svg)](https://github.com/Bogdanp/dramatiq/actions?query=workflow%3A%22CI%22)\n[![PyPI version](https://badge.fury.io/py/dramatiq.svg)](https://badge.fury.io/py/dramatiq)\n[![Documentation](https://img.shields.io/badge/doc-latest-brightgreen.svg)](http://dramatiq.io)\n[![Discuss](https://img.shields.io/badge/discuss-online-orange.svg)](https://groups.io/g/dramatiq-users)\n\n*A fast and reliable distributed task processing library for Python 3.*\n\n\u003chr/\u003e\n\n**Changelog**: https://dramatiq.io/changelog.html \u003cbr/\u003e\n**Community**: https://groups.io/g/dramatiq-users \u003cbr/\u003e\n**Documentation**: https://dramatiq.io \u003cbr/\u003e\n\n\u003chr/\u003e\n\n\u003ch3 align=\"center\"\u003eSponsors\u003c/h3\u003e\n\n\u003cp align=\"center\" dir=\"auto\"\u003e\n  \u003ca href=\"https://franz.defn.io\" target=\"_blank\"\u003e\n    \u003cimg width=\"64px\" src=\"docs/source/_static/franz-logo.png\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://podcatcher.defn.io\" target=\"_blank\"\u003e\n    \u003cimg width=\"64px\" src=\"docs/source/_static/podcatcher-logo.png\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\n## Installation\n\nIf you want to use it with [RabbitMQ]\n\n    pip install 'dramatiq[rabbitmq, watch]'\n\nor if you want to use it with [Redis]\n\n    pip install 'dramatiq[redis, watch]'\n\n\n## Quickstart\n\nMake sure you've got [RabbitMQ] running, then create a new file called\n`example.py`:\n\n``` python\nimport dramatiq\nimport requests\nimport sys\n\n\n@dramatiq.actor\ndef count_words(url):\n    response = requests.get(url)\n    count = len(response.text.split(\" \"))\n    print(f\"There are {count} words at {url!r}.\")\n\n\nif __name__ == \"__main__\":\n    count_words.send(sys.argv[1])\n```\n\nIn one terminal, run your workers:\n\n    dramatiq example\n\nIn another, start enqueueing messages:\n\n    python example.py http://example.com\n    python example.py https://github.com\n    python example.py https://news.ycombinator.com\n\nCheck out the [user guide] to learn more!\n\n\n## License\n\ndramatiq is licensed under the LGPL.  Please see [COPYING] and\n[COPYING.LESSER] for licensing details.\n\n\n[COPYING.LESSER]: https://github.com/Bogdanp/dramatiq/blob/master/COPYING.LESSER\n[COPYING]: https://github.com/Bogdanp/dramatiq/blob/master/COPYING\n[RabbitMQ]: https://www.rabbitmq.com/\n[Redis]: https://redis.io\n[user guide]: https://dramatiq.io/guide.html\n","funding_links":["https://github.com/sponsors/Bogdanp"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbogdanp%2Fdramatiq","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbogdanp%2Fdramatiq","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbogdanp%2Fdramatiq/lists"}