Metadata-Version: 2.4
Name: django-absurd
Version: 0.1.0a2
Summary: Django integration for Absurd, the Postgres-native workflow engine.
Author-email: Marc Gibbons <marc@lincolnloop.com>, Lincoln Loop <info@lincolnloop.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/lincolnloop/django-absurd
Project-URL: Issues, https://github.com/lincolnloop/django-absurd/issues
Project-URL: Repository, https://github.com/lincolnloop/django-absurd
Keywords: absurd,background-jobs,django,postgres,queue,tasks,workflow,workflow-engine
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 6.0
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: System :: Distributed Computing
Classifier: Typing :: Typed
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: absurd-sdk<0.5.0,>=0.4.0
Requires-Dist: Django>=6.0
Dynamic: license-file

# django-absurd

Django integration for [Absurd](https://earendil-works.github.io/absurd/), the
Postgres-native workflow engine. Wraps Absurd's SDK so it reuses Django's database
connection, ships its schema as Django migrations, and exposes its queues and tasks
through Django settings, management commands, and system checks.

> **Alpha.** APIs and behavior may change between releases.

## Requirements

- Python 3.12+
- Django 6.0+
- PostgreSQL with the **psycopg (v3)** Django backend (the Absurd SDK reuses Django's
  connection and requires psycopg3)

## Installation

```console
pip install django-absurd
```

Pre-release tags (e.g. `v0.1.0a1`) upload as PyPI pre-releases, which `pip install`
skips unless you pass `--pre`:

```console
pip install --pre django-absurd
```

## License

MIT — see [LICENSE](LICENSE).
