Metadata-Version: 2.1
Name: lytekit
Version: 0.3.0
Summary: Flyte SDK for Python
Home-page: https://github.com/flyteorg/flytekit
Maintainer: Flyte Contributors
Maintainer-email: admin@flyte.org
License: apache2
Platform: UNKNOWN
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: lyteidl (==0.1.0)
Requires-Dist: wheel (<1.0.0,>=0.30.0)
Requires-Dist: pandas (<2.0.0,>=1.0.0)
Requires-Dist: pyarrow (<7.0.0,>=4.0.0)
Requires-Dist: click (<9.0,>=6.6)
Requires-Dist: croniter (<4.0.0,>=0.3.20)
Requires-Dist: deprecated (<2.0,>=1.0)
Requires-Dist: docker (<6.0.0,>=5.0.3)
Requires-Dist: python-dateutil (>=2.1)
Requires-Dist: grpcio (!=1.45.0,<2.0,>=1.43.0)
Requires-Dist: grpcio-status (!=1.45.0,>=1.43)
Requires-Dist: protobuf (<4,>=3.6.1)
Requires-Dist: python-json-logger (>=2.0.0)
Requires-Dist: pytimeparse (<2.0.0,>=1.1.8)
Requires-Dist: pytz
Requires-Dist: pyyaml
Requires-Dist: keyring (>=18.0.1)
Requires-Dist: requests (<3.0.0,>=2.18.4)
Requires-Dist: responses (>=0.10.7)
Requires-Dist: sortedcontainers (<3.0.0,>=1.5.9)
Requires-Dist: statsd (<4.0.0,>=3.0.0)
Requires-Dist: urllib3 (<2.0.0,>=1.22)
Requires-Dist: wrapt (<2.0.0,>=1.0.0)
Requires-Dist: retry (==0.9.2)
Requires-Dist: dataclasses-json (>=0.5.2)
Requires-Dist: jsonschema (>=4.5.1)
Requires-Dist: marshmallow-jsonschema (>=0.12.0)
Requires-Dist: natsort (>=7.0.1)
Requires-Dist: docker-image-py (>=0.1.10)
Requires-Dist: typing-extensions
Requires-Dist: docstring-parser (>=0.9.0)
Requires-Dist: diskcache (>=5.2.1)
Requires-Dist: cloudpickle (>=2.0.0)
Requires-Dist: cookiecutter (>=1.7.3)
Requires-Dist: singledispatchmethod ; python_version < "3.8.0"
Requires-Dist: numpy (<1.22.0) ; python_version < "3.8.0"

<html>
    <p align="center">
        <img src="https://raw.githubusercontent.com/flyteorg/static-resources/main/common/flyte_circle_gradient_1_4x4.png" alt="Flyte Logo" width="100">
    </p>
    <h1 align="center">
        Flytekit Python
    </h1>
    <p align="center">
        Flytekit Python is the Python SDK built on top of Flyte
    </p>
    <h3 align="center">
        <a href="plugins/README.md">Plugins</a>
        <span> · </span>
        <a href="https://docs.flyte.org/projects/flytekit/en/latest/contributing.html">Contribution Guide</a>
    </h3>
</html>

[![PyPI version fury.io](https://badge.fury.io/py/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI download day](https://img.shields.io/pypi/dd/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI download month](https://img.shields.io/pypi/dm/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI format](https://img.shields.io/pypi/format/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![PyPI implementation](https://img.shields.io/pypi/implementation/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
![Codecov](https://img.shields.io/codecov/c/github/flyteorg/flytekit?style=plastic)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/flytekit.svg)](https://pypi.python.org/pypi/flytekit/)
[![Docs](https://readthedocs.org/projects/flytekit/badge/?version=latest&style=plastic)](https://flytekit.rtfd.io)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Slack](https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social)](https://slack.flyte.org)

Flytekit Python is the Python Library for easily authoring, testing, deploying, and interacting with Flyte tasks, workflows, and launch plans.

If you haven't explored Flyte yet, please refer to:
 - [Flyte homepage](https://flyte.org)
 - [Flyte core repository](https://github.com/flyteorg/flyte)

## 🚀 Quick Start

Flytekit is the core extensible library to author Flyte workflows and tasks and interact with Flyte backend services.

### Installation

```bash
pip install flytekit
```

### A Simple Example

```python
from flytekit import task, workflow

@task(cache=True, cache_version="1", retries=3)
def sum(x: int, y: int) -> int:
    return x + y

@task(cache=True, cache_version="1", retries=3)
def square(z: int) -> int:
    return z*z

@workflow
def my_workflow(x: int, y: int) -> int:
    return sum(x=square(z=x), y=square(z=y))
```

## 📦 Resources
- [Learn Flytekit by examples](https://flytecookbook.readthedocs.io/)
- [Flytekit API documentation](https://flytekit.readthedocs.io/)


## 📖 How to Contribute to Flytekit
You can find the detailed contribution guide [here](https://docs.flyte.org/projects/flytekit/en/latest/contributing.html). Plugins' contribution guide is included as well.

## Code Structure
Please see the [contributor's guide](https://docs.flyte.org/projects/flytekit/en/latest/contributing.html) for a quick summary of how this code is structured.

## 🐞 File an Issue
Refer to the [issues](https://docs.flyte.org/en/latest/community/contribute.html#file-an-issue) section in the contribution guide if you'd like to file an issue.

## 🔌 Flytekit Plugins
Refer to [plugins/README.md](plugins/README.md) for a list of available plugins.
There may be plugins outside of this list, but the core maintainers maintain this list.


