Skip to main content

A human-centred, teachable data wrangling and pipeline framework.

Project description

WowData™

PyPI version Python versions Coverage

WowData™ is a human-centred data wrangling and pipeline framework designed to make real-world data cleanup understandable, teachable, and inspectable.

Install

From PyPI:

pip install wowdata

From source (editable):

git clone https://github.com/sci2pro/wowdata.git
cd wowdata
pip install -e .

Quick Start

Create a small input CSV:

person_id,age,country
1,30,KE
2,17,UG
3,41,KE

Run with Python API:

from wowdata import Pipeline, Sink, Source, Transform

pipe = (
    Pipeline(Source("people.csv"))
    .then(Transform("cast", params={"types": {"age": "integer"}, "on_error": "null"}))
    .then(Transform("filter", params={"where": "age >= 18 and country == 'KE'"}))
    .then(Sink("adults_ke.csv"))
)

pipe.run()

Run from YAML with CLI:

wow run pipeline.yaml

Fallback command if wow conflicts in your shell:

wowdata run pipeline.yaml

Repository Examples

The repository now includes runnable sample pipelines and data files under examples/.

From the repo root, you can run them directly with --base-dir so relative CSV paths resolve correctly:

wow run examples/climate_heat_events.yaml --base-dir examples
wow run examples/climate_rainfall_alerts.yaml --base-dir examples

You can also cd examples and run the same YAML files from there.

Documentation

To preview docs locally:

pip install -e .[docs]
mkdocs serve

The same docs can be published to GitHub Pages (for wowdata.github.io).

Testing

Run the default local test target:

pytest

Or through tox:

tox

tox is configured to run Python 3.14 by default. If you explicitly want a different interpreter or a wider matrix, request it directly, for example:

tox -e py311
tox -e py310,py311,py312,py313,py314

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

wowdata-0.2.3.tar.gz (56.9 kB view details)

Uploaded Source

Built Distribution

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

wowdata-0.2.3-py3-none-any.whl (68.2 kB view details)

Uploaded Python 3

File details

Details for the file wowdata-0.2.3.tar.gz.

File metadata

  • Download URL: wowdata-0.2.3.tar.gz
  • Upload date:
  • Size: 56.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for wowdata-0.2.3.tar.gz
Algorithm Hash digest
SHA256 3aadc54f996a175a567dfd465d971ecf86aa3a69106e746ec9e3b6587c05167e
MD5 78f67080e9e0fe486bcac9ca5ccef820
BLAKE2b-256 b9c001ac848ec5202106bd153444f2ae1d74ad5e14fb9ed7c8a68e4a7f3fdd61

See more details on using hashes here.

Provenance

The following attestation bundles were made for wowdata-0.2.3.tar.gz:

Publisher: publish.yml on sci2pro/wowdata

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wowdata-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: wowdata-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 68.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for wowdata-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1e9536e8379f2c587d19d29f212b69295b3e8ef1251fb243b23c34d65e122cd4
MD5 8c14934bc7195bf4841308939e2b4e6b
BLAKE2b-256 9a1731617b70798ad29d443403be963d0bb3ee08bd68d67f751bd950a2c7841c

See more details on using hashes here.

Provenance

The following attestation bundles were made for wowdata-0.2.3-py3-none-any.whl:

Publisher: publish.yml on sci2pro/wowdata

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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