Skip to main content

Tiny Argo Workflows python devkit

Project description

Tinyfan

Tinyfan: Minimalist Data Pipeline Kit - Generate Argo Workflows with Python

Features

  • Generate Argo Workflows manifests from Python data pipeline definitions.
  • Ease of Use and highly extendable
  • Intuitive data model abstraction: let Argo handle orchestration—we focus on the data.
  • Argo Workflows is notably lightweight and powerful – and so are we!
  • Enhanced DevOps Experience: easly testable, Cloud Native and GitOps-ready.

Our Goal

  • Minimize mental overhead when building data pipelines.

Not Our Goal

  • Full-featured orchestration framework: We don't aim to be a battery-powered, comprehensive data pipeline orchestration solution.
    No databases, web servers, or controllers—just a data pipeline compiler. Let's Algo Workflows handle all the complexity.

Installation

# Requires Python 3.10+
pipx install tinyfan

Tiny Example

# main.py

# Asset definitions

from tinyfan import asset

@asset(schedule="*/3 * * * *")
def world() -> str:
    return "world"

@asset()
def greeting(world: str):
    print("hello " + world)
# Apply the changes to argo workflow

tinyfan main.py | kubectl apply -f -

Real World Example (still tiny though!)

Comming soon

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tinyfan-0.3.0.tar.gz (60.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tinyfan-0.3.0-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file tinyfan-0.3.0.tar.gz.

File metadata

  • Download URL: tinyfan-0.3.0.tar.gz
  • Upload date:
  • Size: 60.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tinyfan-0.3.0.tar.gz
Algorithm Hash digest
SHA256 9b503c90dece45751a8c7f0ee8373408747b434f5f59a4ef7bf0a12b6a653fee
MD5 3727626db3e0cec55e860f83a581e350
BLAKE2b-256 b9731182f4f4ad2a5c426828e85523d41e93e27ee6266fb703c9df4664009b05

See more details on using hashes here.

File details

Details for the file tinyfan-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: tinyfan-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 21.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tinyfan-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6f73b7efda4028ca4fb0e711c4adf151b6d455bc6d2fd71246d0ec52f85b09c
MD5 d285ca69fc05365985c2dcbfbc2bde4f
BLAKE2b-256 a8fdddfff008fdc6043900638d8069e1c51b24610466719ab856f4c85c6006dc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page