Identify exact bytes.Kesin byte'ı tanı.
Typed Arrow data produces a canonical pf-fp-v1 BLAKE3 fingerprint.Tipli Arrow verisi kanonik pf-fp-v1 BLAKE3 fingerprint üretir.
“Ruff, but for your data.”
ProofFrame is an Arrow-native data-quality engine for Rust and Python. Profile a dataset, check it against a contract, diff two versions by key — and get a canonical BLAKE3 fingerprint plus an Ed25519 signed receipt that proves exactly what was checked.
Most data tools answer one narrow question — did this table pass? — and hide everything behind a boolean. When a pipeline breaks downstream, or an auditor asks what data a model was trained on, there is no record of what was checked, why it failed, or whether the exact dataset can be identified again. Data moves faster than the evidence about it — so bad data ships, and no one can prove what happened.
Every profile emits a canonical pf-fp-v1 BLAKE3 fingerprint from typed bytes — not Arrow display — so the exact dataset can always be identified again.
Contracts return the failing rows, a total violation count, and truncation status — never a vague pass/fail that hides real failures.
Ed25519 signed receipts (RFC 8785 + BLAKE3) turn a check into a verifiable, tamper-evident record anyone can re-check later.
A Rust core with Python bindings — PyArrow, Pandas, and Polars feed the same native path, deterministic JSON out.
Canonical fingerprints, keyed diffs, PII & leakage scans, and Ed25519 signed receipts — evidence, not vibes.
Published under Apache-2.0, #![forbid(unsafe_code)], ABI-stable Python wheels for 3.10+.
Let's put proof-carrying checks at the edge of your pipeline.
ProofFrame ran an exact, row-level contract over 7.6 million real Bitcoin market rows — the whole dataset, not a sample — and emitted a canonical fingerprint plus a signed receipt. Read the writeup, or run the notebook yourself on Kaggle.
ProofFrame ships to both registries under Apache-2.0 — a pure-Rust crate for Rust users, and ABI-stable wheels for Python.
ABI-stable wheels for Python 3.10+ — pf.validate, pf.profile, pf.diff, pf.scan_pii, and signed receipts.
A pure-Rust default build with an idiomatic API returning typed structs — no required Python linkage.
Full Rust API documentation is generated on docs.rs for every published version.
Apache-2.0 for everyone. Need commercial support, custom data contracts, or an SLA? Get in touch →
ProofFrame runs one Arrow-native engine behind Rust and Python. Profiles identify exact typed bytes, contracts return bounded row-level violations, keyed diffs explain change and signed receipts preserve what was checked.ProofFrame Rust ve Python arkasında tek Arrow-native motor çalıştırır. Profiller kesin tipli byte'ları tanımlar, sözleşmeler sınırlı satır-seviyesi ihlal döndürür, keyed diff değişimi açıklar ve imzalı receipt neyin kontrol edildiğini korur.
Typed Arrow data produces a canonical pf-fp-v1 BLAKE3 fingerprint.Tipli Arrow verisi kanonik pf-fp-v1 BLAKE3 fingerprint üretir.
Contracts preserve violation count, evidence rows and truncation state.Sözleşmeler ihlal sayısı, evidence satırları ve truncation durumunu korur.
Keyed comparison separates added, removed and modified records.Keyed karşılaştırma eklenen, silinen ve değişen kayıtları ayırır.
PII and target-leakage checks stay in the same evidence model.PII ve target-leakage kontrolleri aynı evidence modelinde kalır.
RFC 8785 canonical JSON, BLAKE3 and Ed25519 produce a verifiable record.RFC 8785 kanonik JSON, BLAKE3 ve Ed25519 doğrulanabilir kayıt üretir.
Real Bitcoin rows checked by one exact, row-level contract.Tek kesin, satır-seviyesi sözleşmeyle kontrol edilen gerçek Bitcoin satırı.
Published validation run for the 7.6M-row dataset.7,6 milyon satırlık veri için yayımlanan doğrulama koşusu.