Skip to content

A convenience job scheduler based on APScheduler, FastAPI, Pydantic, and SQLAlchemy.

License

Notifications You must be signed in to change notification settings

pyveci/supertask

Repository files navigation

Supertask

Supertask is a convenience task runner for programming recurrent or otherwise scheduled jobs, based on the excellent APScheduler, FastAPI, Pydantic, and SQLAlchemy packages, amongst others.

You can use Supertask to invoke time-driven actions like the venerable cron daemon and the contemporary systemd timers are doing it. It can be used both as a standalone program/service, and as a library.

CI Coverage Downloads per month License Release Notes

» Documentation | Changelog | PyPI | Issues | Source code | License | Community Forum

Features

  • Store jobs in databases supported by SQLAlchemy.
  • Supertask aims for DWIM-like usefulness and UX, and provides CLI-, HTTP-, and other interfaces.
  • Optionally, jobs can be pre-seeded from a JSON file config.json, either from the local filesystem, or from a wide range of remote locations. When using the filesystem, a watchdog monitors the file for changes, in order to keep the schedules up to date.

Status

Please note that Supertask is a work in progress, and to be considered alpha-quality software. Contributions of all kinds are much welcome, in order to make it more solid, and to add features.

Breaking changes should be expected until a 1.0 release, so applying version pinning is strongly recommended when consuming the packages.

Status Package version Supported Python versions

Installation

See Supertask Installation.

Usage

See Supertask Handbook.

Contribute

See Supertask Sandbox.