A lightweight data quality CLI tool
Project description
🛡️ Qualidator
A modern CLI for managing SQL-based data quality checks — now with connector setup.
📌 Overview
Qualidator is a command-line tool that helps you define, manage, and store SQL-based data quality validations.
It can set up a connector to your data source and organize validation queries in a .qualidations folder for easy reuse and version control.
With Qualidator, you can:
- 📂 Initialize a validations project
- 🔌 Configure a connector (Databricks, Snowflake, Postgres, or None)
- ➕ Add a variety of built-in validation checks
- 🗑 Remove one or all validations
- 📊 View project status and existing validations
- 💥 Destroy the project
🚀 Installation
pip install qualidator
⚡ Usage
Run qualidator --help to see available commands:
qualidator --help
| Command | Description |
|---|---|
init |
Initialize .qualidations and optionally set up a data connector |
destroy |
Delete the .qualidations folder (use --force for full removal) |
add |
Add a validation |
remove |
Remove a validation or all validations |
status |
Show project status and validations |
🛠 Examples
1️⃣ Initialize and set up connector
qualidator init
📦 Creates .qualidations, then asks for a data provider:
- Databricks
- Snowflake
- Postgres
- None
If you pick one of the first three, it prompts for credentials and saves them in:
.qualidations/config.json
2️⃣ Add validations
qualidator add --name is_not_null
Please enter the column name to check for NOT NULL: customer_id
✔ Will check that column "customer_id" is not null.
Supported validations:
| Validation | Description |
|---|---|
is_not_null |
Checks that column values are not null |
column_values_are_unique |
Checks that all values in a column are unique |
column_max_is_between |
Checks that the maximum value is within range |
column_min_is_between |
Checks that the minimum value is within range |
column_sum_is_between |
Checks that the sum of values is within range |
column_values_are_between |
Checks that all values are within range |
column_mean_is_between |
Checks that the mean value is within range |
3️⃣ Check status
qualidator status
============================================================
📋 VALIDATIONS IN YOUR PROJECT
------------------------------------------------------------
1. customer_id_is_not_null
2. email_column_values_are_unique
------------------------------------------------------------
✅ Total: 2 validation(s) ready to go!
💡 You can remove with:
qualidator remove --name your_validation_name
============================================================
4️⃣ Remove validations
Remove all:
qualidator remove --all
Remove one:
qualidator remove --name email_column_values_are_unique
5️⃣ Destroy project
qualidator destroy --force
This deletes .qualidations entirely (including config and validations).
📂 Project Structure
qualidator/
│
├── inspectors/
│ ├── uniq.py
│ ├── numeric.py
│
├── __init__.py
├── main.py
└── README.md
🤝 Contributing
Pull requests and ideas are welcome! Open an issue if you have suggestions for new validation types or integrations.
📜 License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
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 qualidator-0.2.0.tar.gz.
File metadata
- Download URL: qualidator-0.2.0.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51daadfc8255b87d2cf9c5e68c58856e9917f3a5ed7ea8b4a7ad60f5c1da7c8b
|
|
| MD5 |
4e8677e55b88ecc7b483910d02f8648c
|
|
| BLAKE2b-256 |
3e319605a94a17a275b45ed872e0985cf11c3a9c0983f991498de5e4cc8a2f7c
|
File details
Details for the file qualidator-0.2.0-py3-none-any.whl.
File metadata
- Download URL: qualidator-0.2.0-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2fa8f4803480c9cf7525ef6fe4a78bfcea2b08c97caeb805f338a99f016566f
|
|
| MD5 |
56ba840274559b71523860cf7e5924e0
|
|
| BLAKE2b-256 |
371b76b28a4a4d4ffdd34d0439175451150bdcb5b3f2bef8a99d88b77c002dab
|