A human-centred, teachable data wrangling and pipeline framework.
Project description
WowData™
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
- Philosophy: docs/philosophy.md
- Examples: EXAMPLES.md
- Reference: REFERENCE.md
- Docs site source: docs/ + mkdocs.yml
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3aadc54f996a175a567dfd465d971ecf86aa3a69106e746ec9e3b6587c05167e
|
|
| MD5 |
78f67080e9e0fe486bcac9ca5ccef820
|
|
| BLAKE2b-256 |
b9c001ac848ec5202106bd153444f2ae1d74ad5e14fb9ed7c8a68e4a7f3fdd61
|
Provenance
The following attestation bundles were made for wowdata-0.2.3.tar.gz:
Publisher:
publish.yml on sci2pro/wowdata
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wowdata-0.2.3.tar.gz -
Subject digest:
3aadc54f996a175a567dfd465d971ecf86aa3a69106e746ec9e3b6587c05167e - Sigstore transparency entry: 1203584137
- Sigstore integration time:
-
Permalink:
sci2pro/wowdata@af71ef6cd5492b3498c1fd6078db4056e71a1741 -
Branch / Tag:
refs/tags/v0.2.3 - Owner: https://github.com/sci2pro
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@af71ef6cd5492b3498c1fd6078db4056e71a1741 -
Trigger Event:
release
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e9536e8379f2c587d19d29f212b69295b3e8ef1251fb243b23c34d65e122cd4
|
|
| MD5 |
8c14934bc7195bf4841308939e2b4e6b
|
|
| BLAKE2b-256 |
9a1731617b70798ad29d443403be963d0bb3ee08bd68d67f751bd950a2c7841c
|
Provenance
The following attestation bundles were made for wowdata-0.2.3-py3-none-any.whl:
Publisher:
publish.yml on sci2pro/wowdata
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wowdata-0.2.3-py3-none-any.whl -
Subject digest:
1e9536e8379f2c587d19d29f212b69295b3e8ef1251fb243b23c34d65e122cd4 - Sigstore transparency entry: 1203584141
- Sigstore integration time:
-
Permalink:
sci2pro/wowdata@af71ef6cd5492b3498c1fd6078db4056e71a1741 -
Branch / Tag:
refs/tags/v0.2.3 - Owner: https://github.com/sci2pro
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@af71ef6cd5492b3498c1fd6078db4056e71a1741 -
Trigger Event:
release
-
Statement type: