Metadata-Version: 2.4
Name: taskshed
Version: 0.3.2
Summary: A high-performant, asynchronous and persistent scheduling library written in Python.
Author-email: Jacob Strauss <jacob@meetchase.ai>
License: MIT
Project-URL: Homepage, https://github.com/Chase-Labs/taskshed
Project-URL: Bug Tracker, https://github.com/Chase-Labs/taskshed/issues
Keywords: scheduling,scheduler,tasks,queue,redis,mysql
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: mysql
Requires-Dist: aiomysql>=0.2.0; extra == "mysql"
Provides-Extra: redis
Requires-Dist: redis>=6.0.0; extra == "redis"
Provides-Extra: all
Requires-Dist: taskshed[mysql,redis]; extra == "all"
Dynamic: license-file

# TaskShed 🛖

`taskshed` is a performant, asynchronous task scheduling framework built with Python's `asyncio`. It allows you to schedule one-off or recurring (interval) coroutine tasks, with a modular architecture that separates execution, scheduling, and data storage.

---

## 🚀 Features

- ✅ Asynchronous execution and storage via `asyncio`.
- 📦 Schedule, update and remove multiple tasks in a single database transaction.
- 🙋‍♂️ Attach (indexable) groups to tasks, allowing for easy user-based management.
- ⏰ Supports both one-time (`date`) and recurring (`interval`) tasks.
- 🧱 Pluggable data stores (e.g. in-memory, MySQL and Redis)

