[<img src="https://img.shields.io/pypi/v/flowui-project?color=%231BA331&label=PyPI&logo=python&logoColor=%23F7F991%20">](https://pypi.org/project/flowui-project/)
[<img src="https://img.shields.io/docker/v/taufferconsulting/flowui-backend?label=Backend&logo=docker&style=flat">](https://hub.docker.com/r/taufferconsulting/flowui-backend)
[<img src="https://img.shields.io/docker/v/taufferconsulting/flowui-frontend?label=Frontend&logo=docker&style=flat">](https://hub.docker.com/r/taufferconsulting/flowui-frontend)
[<img src="https://img.shields.io/readthedocs/flowui?color=%23799194&label=Docs&logo=Read%20the%20Docs&logoColor=white">](link)
# FlowUI Project
FlowUI is an open source workflow management platform, containing:
- an intuitive Graphical User Interface that facilitates creating, editing and supervising any type of Workflows (e.g. data processing, machine learning, etc...)
- a REST API that controls a running Apache Airflow instance
- a standard way of writing Operators which follows good practices for data typing, documentation and distribution
<br>
# FlowUI Infrastructure
Per Platform:
- Frontend service
- Backend service
- Database
- Airflow services
- Github repository for GitSync of Workflows
<br>
## Shared storage structure:
Shared workflow data could be stored in a remote source (e.g. S3 bucket) or locally (for dev and tests only).
```
/shared_storage
..../{dag-id}
......../{run-id}
............/{task-id}
................/results
..................../log.txt
..................../result.npy
..................../result.html
................/report
................/xcom_out
..................../xcom_out.json
```
<br>
## Operators
Each Operator will have:
- A `operator.py` file with the source code to be executed, as the `operator_function()`
- A `models.py` file containing the Pydantic models that define the input, output and secrets for the Operator
- A `metadata.json` file containing the Operators metadata, including frontend node style
Each dependency group from an Operators repository will build an independent Docker image. This dependency group image has the following basic file struture within `/home`:
```
# This path holds the source code from the Operators repository, it comes built in the Image
/operators_repository
..../config.toml
..../operators
......../{OPERATOR-NAME}
............/metadata.json # OPTIONAL
............/model.py # REQUIRED
............/operator.py # REQUIRED
..../.flowui
......../dependencies_map.json
......../compiled_metadata.json
..../dependencies
......../requirements.txt # If dependency group was defined with a requirements.txt file
```
Raw data
{
"_id": null,
"home_page": "",
"name": "flowui-project",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "airflow,UI",
"author": "Luiz Tauffer and Vinicius Vaz",
"author_email": "luiz@taufferconsulting.com",
"download_url": "https://files.pythonhosted.org/packages/d1/09/941be9ffb8bc239586f9092fcae3ae0f76baf1a3c7cae907ec7e60add05d/flowui-project-0.0.22.tar.gz",
"platform": null,
"description": "[<img src=\"https://img.shields.io/pypi/v/flowui-project?color=%231BA331&label=PyPI&logo=python&logoColor=%23F7F991%20\">](https://pypi.org/project/flowui-project/)\n[<img src=\"https://img.shields.io/docker/v/taufferconsulting/flowui-backend?label=Backend&logo=docker&style=flat\">](https://hub.docker.com/r/taufferconsulting/flowui-backend)\n[<img src=\"https://img.shields.io/docker/v/taufferconsulting/flowui-frontend?label=Frontend&logo=docker&style=flat\">](https://hub.docker.com/r/taufferconsulting/flowui-frontend)\n[<img src=\"https://img.shields.io/readthedocs/flowui?color=%23799194&label=Docs&logo=Read%20the%20Docs&logoColor=white\">](link)\n\n\n\n\n# FlowUI Project\nFlowUI is an open source workflow management platform, containing:\n\n- an intuitive Graphical User Interface that facilitates creating, editing and supervising any type of Workflows (e.g. data processing, machine learning, etc...)\n- a REST API that controls a running Apache Airflow instance\n- a standard way of writing Operators which follows good practices for data typing, documentation and distribution\n\n<br>\n\n# FlowUI Infrastructure\n\nPer Platform:\n- Frontend service\n- Backend service\n- Database\n- Airflow services\n- Github repository for GitSync of Workflows\n\n<br>\n\n\n## Shared storage structure:\nShared workflow data could be stored in a remote source (e.g. S3 bucket) or locally (for dev and tests only).\n\n```\n/shared_storage\n..../{dag-id}\n......../{run-id}\n............/{task-id}\n................/results\n..................../log.txt\n..................../result.npy\n..................../result.html\n................/report\n................/xcom_out\n..................../xcom_out.json\n\n\n```\n\n<br>\n\n## Operators\nEach Operator will have:\n- A `operator.py` file with the source code to be executed, as the `operator_function()`\n- A `models.py` file containing the Pydantic models that define the input, output and secrets for the Operator\n- A `metadata.json` file containing the Operators metadata, including frontend node style\n\nEach dependency group from an Operators repository will build an independent Docker image. This dependency group image has the following basic file struture within `/home`:\n```\n# This path holds the source code from the Operators repository, it comes built in the Image\n/operators_repository\n..../config.toml\n..../operators\n......../{OPERATOR-NAME}\n............/metadata.json # OPTIONAL\n............/model.py # REQUIRED\n............/operator.py # REQUIRED\n..../.flowui\n......../dependencies_map.json\n......../compiled_metadata.json\n..../dependencies\n......../requirements.txt # If dependency group was defined with a requirements.txt file\n```\n\n",
"bugtrack_url": null,
"license": "",
"summary": "FlowUI project",
"version": "0.0.22",
"split_keywords": [
"airflow",
"ui"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6e172692251efd6e72239838d4099a6dafca14856c247b2156ae702ec0496d1c",
"md5": "7d7c5ebaa79f652bf45b302d7c1704a5",
"sha256": "85948b6bb706caa5cc8923d0004fe36fd2deb7438b72bf8a9fa0cfefece4f7c2"
},
"downloads": -1,
"filename": "flowui_project-0.0.22-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7d7c5ebaa79f652bf45b302d7c1704a5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 60028,
"upload_time": "2023-04-03T12:02:15",
"upload_time_iso_8601": "2023-04-03T12:02:15.944520Z",
"url": "https://files.pythonhosted.org/packages/6e/17/2692251efd6e72239838d4099a6dafca14856c247b2156ae702ec0496d1c/flowui_project-0.0.22-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d109941be9ffb8bc239586f9092fcae3ae0f76baf1a3c7cae907ec7e60add05d",
"md5": "031005e6da986cb9532189ed8a9e7cc8",
"sha256": "a7579152efc924da696140c460822a80db0b24d1df33bd36ba402e205b7caeb7"
},
"downloads": -1,
"filename": "flowui-project-0.0.22.tar.gz",
"has_sig": false,
"md5_digest": "031005e6da986cb9532189ed8a9e7cc8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 48160,
"upload_time": "2023-04-03T12:02:17",
"upload_time_iso_8601": "2023-04-03T12:02:17.100841Z",
"url": "https://files.pythonhosted.org/packages/d1/09/941be9ffb8bc239586f9092fcae3ae0f76baf1a3c7cae907ec7e60add05d/flowui-project-0.0.22.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-03 12:02:17",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "flowui-project"
}