Skip to main content

Polars-first data-quality and data-validation toolkit.

Project description

Aqualisys

Polars-first data-quality toolkit delivering deterministic validation, structured logging, and a composable rule registry.

Why Aqualisys?

  • Declarative rules: ship reusable expectations such as not-null, uniqueness, accepted-values, and referential checks.
  • Deterministic logging: every run is persisted to SQLite (JSON-friendly) for audits and debugging.
  • Pipeline-ready: run from Python code or via aqualisys validate configs/orders.yml in CI.

Quick Start

python -m venv .venv && source .venv/bin/activate
pip install -e .[dev]
pytest
aqualisys validate configs/orders.yml

Usage Example

import polars as pl
from aqualisys import DataQualityChecker, NotNullRule, UniqueRule, SQLiteRunLogger

df = pl.DataFrame({"order_id": [1, 2, 3], "status": ["pending", "shipped", "shipped"]})
checker = DataQualityChecker(
    rules=[NotNullRule("order_id"), UniqueRule("order_id")],
    logger=SQLiteRunLogger("artifacts/example_runs.db"),
)
report = checker.run(df, dataset_name="orders")
assert report.passed

Project Structure

  • src/aqualisys/: library source (rules, checker, logging, CLI).
  • tests/: pytest suites (unit + integration).
  • configs/: sample validation suite definitions.
  • docs/: roadmap and design notes.

See docs/PUBLISHING.md for uv-based build and release steps once you are ready to publish a new version.

See docs/ROADMAP.md for the multi-week implementation plan inspired by the Start Data Engineering guide.

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

aqualisys-0.1.0.tar.gz (50.6 kB view details)

Uploaded Source

Built Distribution

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

aqualisys-0.1.0-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file aqualisys-0.1.0.tar.gz.

File metadata

  • Download URL: aqualisys-0.1.0.tar.gz
  • Upload date:
  • Size: 50.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.29 {"installer":{"name":"uv","version":"0.9.29","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 aqualisys-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b55e259f86975ec0c2fa14de09dfbd4b42756cb2ec345988df667bb4bddce6c6
MD5 e330323da3864ff381b09ce76165d92e
BLAKE2b-256 44d1cda49dab3e8b342867323b02d9f23c0a34eba5450f9f3e7eba8caa1bf1fd

See more details on using hashes here.

File details

Details for the file aqualisys-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: aqualisys-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.29 {"installer":{"name":"uv","version":"0.9.29","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 aqualisys-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5ae25568b377bf33ab08331ea50b5a3c73930d367464a10d877a6e2647090fa0
MD5 d6ff3283faf7c2bd0f8f2d91cb6597f2
BLAKE2b-256 00cc5c28709e4e29668d69da8bea4d345e3c93f04e43b28004e488797c33822d

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