Skip to main content

FlowTask

FlowTask is a plugin-based, component-driven task execution framework for create complex Tasks.

FlowTask runs Tasks defined in JSON, YAML or TOML files, any Task is a combination of Components, and every component in the Task run sequentially or depend of others, like a DAG.

Can create a Task combining Commands, Shell scripts and other specific Components (as TableInput: Open a Table using a datasource, DownloadFromIMAP: Download a File from a IMAP Folder, and so on), any Python Callable can be a Component inside a Task, or can extends UserComponent to build your own componets.

Every designed Task can run from CLI, programmatically, via RESTful API (using our aioHTTP-based Handler), called by WebHooks or even dispatched to a external Worker using our built-in Scheduler.

Quickstart

pip install flowtask

Tasks can organizated into directory structure like this:

tasks / ├── programs / ├── test / ├── tasks /

The main reason of this structure, is maintain organized several tasks by tenant/program, avoiding filling a directory with several task files.

FlowTask support "TaskStorage", a Task Storage is the main repository for tasks, main Task Storage is a directory in any filesystem path (optionally you can syncronize that path using git), but Tasks can be saved onto a Database or a S3 bucket.

Dependencies

  • aiohttp (Asyncio Web Framework and Server) (required by navigator)
  • AsyncDB
  • QuerySource
  • Navigator-api
  • (Optional) Qworker (for distributing asyncio Tasks on distributed workers).

Features

  • Component-based Task execution framework with several components covering several actions (download files, create pandas dataframes from files, mapping dataframe columns to a json-dictionary, etc)
  • Built-in API for execution of Tasks.

How I run a Task?

Can run a Task from CLI:

task --program=test --task=example

on CLI, you can pass an ENV (enviroment) to change the environment file on task execution.

ENV=dev task --program=test --task=example

or Programmatically:

from flowtask import Task
import asyncio

task = Task(program='test', task='example')
results = asyncio.run(task.run())
# we can alternatively, using the execution mode of task object:
results = asyncio.run(task())

Requirements

Contribution guidelines

Please have a look at the Contribution Guide

  • Writing tests
  • Code review
  • Other guidelines

Who do I talk to?

  • Repo owner or admin
  • Other community or team contact

License

Navigator is licensed under Apache 2.0 License. See the LICENSE file for more details.

Metadata

Release files for flowtask 5.13.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flowtask 5.13.9
File Size Uploaded Provenance Actions
flowtask-5.13.9.tar.gz 1.7 MB With provenance Details for flowtask-5.13.9.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for flowtask 5.13.9
File Interpreter ABI Platform Actions
flowtask-5.13.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details for flowtask-5.13.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
flowtask-5.13.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details for flowtask-5.13.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
flowtask-5.13.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details for flowtask-5.13.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Total release size: 13.2 MB

Release files / flowtask-5.13.9.tar.gz

Download URL flowtask-5.13.9.tar.gz
Size 1.7 MB
Tags Source
SHA-256 checksum
How to use checksums
41618a18e1fb863fd140fea3e3d0a73e2fb3da438e8c20f1b7b394edacf17fce
BLAKE2b-256 checksum
How to use checksums
8561daf122fd2be8049a1cbd7bd3cde03fae45794d60d5e14b4501a2fde28e39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / flowtask-5.13.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL flowtask-5.13.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f2b979a2add11d949957a7a5e2fbbc86cfebac215c77a4d36bb896ec306e5dc3
BLAKE2b-256 checksum
How to use checksums
4d3b7200612a08f6a85287c07b9a5ec7860a2d89597e33995a0a32151a2a13bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / flowtask-5.13.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL flowtask-5.13.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.9 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
54888ee1b584408eff37f526dfe75db18e08d3d8976c09c1ffd332eef0f97778
BLAKE2b-256 checksum
How to use checksums
cb734dc40ffca447113e44658f50fd9e6c192ab267e1b2733a18e028ea458010
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / flowtask-5.13.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL flowtask-5.13.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
3d9338f033222e33bdb64486daf72a5a99932a948b226a4c2163e1918b317a9b
BLAKE2b-256 checksum
How to use checksums
a4c62c1c3345077ca1ae1c8c30f46986113b5e212a5a64b018444e1a18b169c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Security for flowtask 5.13.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 4 files in this release have been uploaded with provenance metadata.

Select from 4 files

Attestation for flowtask-5.13.9.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

5.13.9 This release

4 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page