Metadata-Version: 2.2
Name: UrlTasker
Version: 0.0.1
Summary: A Python library for defining, templating, and executing configurable asynchronous actions triggered via URLs.
Home-page: https://github.com/mauricelambert/UrlTasker
Author: Maurice Lambert
Author-email: Maurice Lambert <mauricelambert434@gmail.com>
Maintainer: Maurice Lambert
Maintainer-email: Maurice Lambert <mauricelambert434@gmail.com>
License: GPL-3.0 License
Project-URL: Github, https://github.com/mauricelambert/UrlTasker
Project-URL: Documentation, https://mauricelambert.github.io/info/python/code/UrlTasker.html
Keywords: url,task,async,async-tasker,asynchronous
Platform: Windows
Platform: Linux
Platform: MacOS
Classifier: Operating System :: POSIX
Classifier: Natural Language :: English
Classifier: Topic :: System :: Networking
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Programming Language :: Python
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Python :: 3.8
Classifier: Operating System :: Microsoft :: Windows
Classifier: Topic :: System :: Systems Administration
Classifier: Intended Audience :: System Administrators
Classifier: Topic :: Software Development :: Libraries
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Dynamic: author
Dynamic: home-page
Dynamic: maintainer
Dynamic: requires-python

![UrlTasker Logo](https://mauricelambert.github.io/info/python/code/UrlTasker_small.png "UrlTasker logo")

# UrlTasker

## Description

UrlTasker is a flexible Python framework for defining, configuring, and executing asynchronous actions using simple URL. Designed for modern async workflows, it allows developers to expose and trigger actions (HTTP, processus, ect...) configured by simple URL.

## Requirements

This package require:

 - python3
 - python3 Standard Library
 - PegParser

## Installation

### Pip

```bash
python3 -m pip install UrlTasker
```

### Git

```bash
git clone "https://github.com/mauricelambert/UrlTasker.git"
cd "UrlTasker"
python3 -m pip install .
```

### Wget

```bash
wget https://github.com/mauricelambert/UrlTasker/archive/refs/heads/main.zip
unzip main.zip
cd UrlTasker-main
python3 -m pip install .
```

### cURL

```bash
curl -O https://github.com/mauricelambert/UrlTasker/archive/refs/heads/main.zip
unzip main.zip
cd UrlTasker-main
python3 -m pip install .
```

## Usages

### Python script

```python
from UrlTasker import *

run(run_tasks(
    "http://127.0.0.1:8000/",
    "http://127.0.0.1:8000/1",
    "http://127.0.0.1:8000/2",
    "http+POST://test:test@127.0.0.1:8000/2;Filename=toto123?whynot#mydata",
    "script:test.py;test=test&test2=test?test=test#mydata",
    "https+GET+insecure://31.172.239.74/",
    "webscripts://127.0.0.1:8000/show_license.py?codeheader",
    "webscripts://127.0.0.1:8000/test_config.py?select=test&password=test&password=test&--test-date=2025-07-18&test_input=trololo&test_number=45#select%0aarguments%0a",
))

run(get_task("script:test.py;test=test&test2=test?test=test#mydata").run())
```

## Links

 - [Pypi](https://pypi.org/project/UrlTasker)
 - [Github](https://github.com/mauricelambert/UrlTasker)
 - [Documentation](https://mauricelambert.github.io/info/python/code/UrlTasker.html)

## License

Licensed under the [GPL, version 3](https://www.gnu.org/licenses/).
