Featuresmith Icon
Featuresmith
  • Docs
  • SDK
  • CLI
  • Examples
  • Roadmap
v0.4.0
Featuresmith Icon
v0.4.0 — Recommendation & Planning

Every dataset deserves
a code review.

Most ML failures originate from dataset quality, not model architecture. Featuresmith is an open-source Dataset Review Platform that brings automated code reviews, ML readiness scores, target leakage detection, and version diffing to tabular data.

Get StartedView on GitHubv0.4.0
Apache 2.0License
375 PassingUnit Tests
Strict MyPyType Safety
Ruff & Import LinterLinter
featuresmith review
$ featuresmith review examples/data/processed/titanic.csv --target survived
 
Featuresmith Dataset Review (v0.4.0)
Rows: 891 | Columns: 12 | Engine: v0.4.0
 
[CRITICAL] Missing Values in column 'cabin' (77.1% missing)
[WARNING] High Skewness in column 'fare' (skewness 4.78)
[INFO] Identifier column 'passengerid' detected
[PASSED] Leakage Detection: No target leakage found
 
ML Readiness Score: 86.9 / 100
Summary: 5 of 7 dimensions healthy; 2 with findings
Recommendations: 3 ranked fix suggestions
────────────────────────────────────────
$

The Problem

Engineering discipline stops at the dataset's edge.

Every serious codebase has linters, formatters, static analyzers, and CI/CD tests. But machine learning datasets—which are just as load-bearing as software code—get almost none of it.

Hidden Target Leakage

Future timestamps, target correlations, or duplicate ID columns silently artificially inflate validation scores but crash in production.

Silent Schema Drift

Unannounced column type changes, null spikes, or unexpected categorical distributions breaking downstream feature pipelines.

Missing Values & Outliers

Unchecked null ratios and extreme anomalous values degrading model weights and inference accuracy without throwing runtime errors.

Dataset Regressions

Quality drops between snapshot versions (v1 vs v2) going completely unnoticed before expensive model re-training runs.

Bad Pre-training Assumptions

Training complex neural nets or tree models on datasets plagued by constant zero-variance columns or high-cardinality noise.

Featuresmith Solution

Automated pre-training dataset code reviews, 0–100 ML readiness scorecards, and CI/CD gate checks to catch failures before they cost compute.

Product Workflow

From Raw Data to Confident Training

Understand how Featuresmith's flagship capabilities work together in a single continuous developer loop.

01

Raw Dataset

CSV, Parquet, Excel, pandas/Polars

Load tabular data into a normalized contract with zero data transformations.

02

Dataset Review

fs.review() / featuresmith review

10 automated reviewers evaluate schema, data types, missingness, duplicates, cardinality, feature quality, and snapshot deltas.

03

ML Readiness Score

Explainable 0–100 Scorecard

Get a clear 0-100 score across 7 effective health dimensions with actionable fix suggestions.

04

Leakage Detection

6 Named Pattern Detectors

Catch target correlations, timestamp anomalies, and identifier shapes before training.

05

Dataset Diff

fs.diff() Snapshot Comparison

Compare dataset versions to ensure schema, missingness, and health didn't regress.

06

Recommendations

Ranked, Explainable Fixes

The Recommendation Engine merges findings into a ranked list with confidence and traceability.

07

Plan

fs.plan() / featuresmith plan

Compile accepted recommendations into an inspectable, deterministic Plan of transformation steps.

Current Capabilities

Available in v0.4.0

Featuresmith currently provides deterministic profiling, rule-based validation, comprehensive dataset reviews, snapshot diffs, and ML readiness scoring via an SDK and CLI.

Dataset Code Review

Automate code reviews for your datasets before model training. 10 automated reviewers inspect schema, data types, missingness, duplicates, distributions, feature quality, and snapshot deltas.

ML Readiness Score

Know whether your dataset is actually ready for machine learning with an explainable 0–100 quality scorecard across 7 effective health dimensions.

Intelligent Leakage Detection

Prevent target leakage, future timestamps, and ID correlation from silently corrupting model validation scores before training.

Dataset Diff Engine

Understand exactly what changed between two dataset snapshot versions (schema, missingness, distribution shifts, quality deltas).

CI/CD Gate Integration

Stop bad datasets in CI pipelines with deterministic exit-code gating (0 = clean, 1 = findings) and machine-readable JSON exports.

Extensible Architecture

Deterministic computation powered by Polars with extensible plugin points for custom reviewers, rules, connectors, and exporters.

Positioning

Why Featuresmith?

Think of Featuresmith as the equivalent of Ruff or ESLint for tabular datasets.

vs. pandas / Polars

Raw manipulation vs. Automated Dataset Reviews

pandas and Polars provide low-level dataframe operations. Featuresmith builds automated dataset reviews, 0–100 ML readiness scorecards, quality rules, and leakage detection on top of them.

vs. ydata-profiling

Exploratory HTML reports vs. CI/CD Gate Engine

ydata-profiling generates heavy HTML reports for manual EDA. Featuresmith is a lightweight, ultra-fast CLI & Python SDK built for automated dataset code reviews and exit-code CI/CD gates.

vs. Great Expectations

Pipeline assertions vs. ML Dataset Readiness

Great Expectations manages complex pipeline assertions. Featuresmith is a zero-config, developer-first toolkit purpose-built for ML dataset readiness, leakage detection, and version diffing.

Who it's for

Built for the entire ML team

Whether you are building pipelines, training models, or managing MLOps, Featuresmith streamlines dataset quality checks.

ML Engineers

Stop target leakage and silent schema breaks before spending GPU hours on model training.

Data Scientists

Audit raw data instantly and receive an explainable 0–100 ML readiness scorecard with actionable tips.

Data Engineers

Prevent corrupted data drops from silently reaching feature stores and training pipelines.

MLOps Engineers

Gate CI/CD pipelines with deterministic CLI exit codes and machine-readable JSON reports.

Students & Learners

Learn production data quality best practices with transparent rationale and remediation guidance.

Code Examples

Intuitive by design

Featuresmith's API is designed to feel natural whether you're scripting from the terminal or integrating into a Python codebase.

example.py
python
1import featuresmith as fs
2
3# 1. Load dataset (CSV, Parquet, Excel, pandas/Polars DataFrame)
4dataset = fs.load("examples/data/processed/titanic.csv")
5print(f"Loaded {dataset.row_count} rows across {len(dataset.schema.names)} columns.")
6
7# 2. Run automated dataset code review with 10 reviewers
8review_res = fs.review(dataset, target_column="survived")
9
10# 3. Extract 0-100 ML Readiness Scorecard
11scorecard = fs.score(review_res)
12if scorecard:
13 print(f"ML Readiness Score: {scorecard.overall}/100")
14 for dim in scorecard.dimensions:
15 print(f" - {dim.label}: {dim.score}/100 ({len(dim.contributing_findings)} findings)")
16
17# 4. Compare dataset snapshots (Dataset Diff)
18diff_res = fs.diff("v1.csv", "v2.csv", target_column="survived")
19print(f"Health Verdict: {diff_res.summary.overall_health}")
20
21# 5. Compile an inspectable remediation Plan from accepted recommendations
22plan = fs.plan(review_res, accept=["rec.quality.missingness.cabin"])
23for item in plan.items:
24 print(f" - {item.title} (confidence {item.confidence})")
Install via pip:pip install featuresmith-clilatest: v0.4.0

Architecture

A clean, composable pipeline

Featuresmith is designed as a layered pipeline. Each stage builds on the last, giving you clear extension points as your needs grow.

Raw Data Source

CSV · Excel · Parquet · DataFrame

Dataset Layer

fs.load() normalized schema and connectors

Dataset Review Engine

10 automated reviewers · 0–100 ML Readiness Score · 6 Leakage detectors · Diff-aware review

CLI & SDK Interfaces

Zero business logic thin clients calling public SDK APIs

Recommendation & Plan Primitive

Ranked recommendations compiled into inspectable transformation steps

Planned

Dataset Contracts & featuresmith.lock (Phase 5+)

Versioned lockfiles, post-apply validation, CI drift-gating

Planned

AI-Assisted Planning & Chat (Phase 7+)

Natural-language plan authoring & narrative summaries over deterministic facts

AvailablePlanned
v0.4.0 — Flagship Capabilities

Flagship Capabilities

Built for production ML engineering workflows. Featuresmith brings dataset review, readiness scoring, leakage detection, and snapshot diffing to your terminal and Python code.

featuresmith review ✅ v0.4.0

Dataset Review

Automate code reviews for your datasets before model training. 10 automated reviewers inspect schema, missingness, duplicates, data types, constants, cardinality, basic statistics, feature quality, target leakage, and snapshot deltas.

7 Health Dimensions ✅ v0.4.0

ML Readiness Score

Know whether your dataset is actually ready for machine learning. Deterministic 0–100 score computed across 7 effective health dimensions with per-dimension breakdowns and fix suggestions.

6 Pattern Detectors ✅ v0.4.0

Intelligent Leakage Detection

Prevent target leakage and future information from corrupting validation scores. 6 pattern detectors merge column findings across correlation, identifier, timestamp, and duplicate targets.

featuresmith diff ✅ v0.4.0

Dataset Diff Engine

Understand exactly what changed between two dataset snapshot versions. Compare via fs.diff() or inline in a review with fs.review(source, previous=...) and featuresmith review --previous.

Ranked Fix Suggestions ✅ v0.4.0

Recommendation Engine

Merge every review finding into a single ranked, explainable list. Deterministic confidence scores and full traceability back to originating findings and reviewers.

featuresmith plan ✅ v0.4.0

Plan Primitive

Compile accepted recommendations into an inspectable Plan of transformation steps via fs.plan() or featuresmith plan — ready for review before anything is applied.

Long-Term Vision

The Dataset Contract Lifecycle

Planned Progression (Phase 5+)

Featuresmith is evolving toward complete Dataset State Management. While v0.4.0 ships the deterministic Review Engine, Recommendation Engine, Plan primitive, Dataset Diff, and Diff-Aware Review, the long-term architecture completes a continuous engineering loop:

1. Review

Audit quality & leakage

v0.4.0 Shipped
2. Recommend

Ranked fix suggestions

v0.4.0 Shipped
3. Plan

Inspectable change set

v0.4.0 Shipped
4. Apply

Generate sklearn/Polars code

Phase 5 Planned
5. Review Again

Verify fix outcome

Phase 5 Planned
6. Diff

Compare snapshot deltas

v0.4.0 Shipped
7. Document

Record transformation log

Phase 5 Planned
8. Lock / Contract

Write featuresmith.lock

Phase 5 Planned

Note: Featuresmith generates code for existing libraries (Polars, pandas, scikit-learn, dbt) and will never introduce a proprietary execution engine or custom transformation runtime.

Roadmap

Where we are. Where we're going.

Featuresmith is actively developed. The roadmap is public and contributions are welcome at every phase.

ShippedComplete

Foundation & Core Review Capabilities (v0.1 → v0.4)

  • Monorepo core library, SDK (load, review, diff, score, plan), and CLI (featuresmith)
  • 10 built-in automated reviewers (schema, missingness, duplicates, constants, cardinality, stats, leakage, diff, feature quality)
  • ML Readiness Score with 7 effective health dimensions (0–100 composite scorecard)
  • Intelligent Leakage Detection with 6 pattern detectors (correlation, timestamp, duplicate target, etc.)
  • Centralized Recommendation Engine & inspectable Plan primitive (fs.plan() / featuresmith plan)
NextIn Progress

Dataset Contracts, Apply Layer & Validation (v0.5)

  • featuresmith.apply — generating clean scikit-learn / Polars transformation code from accepted Plans (never a custom runtime)
  • Automatic post-export re-review and fs.diff() validation
  • featuresmith.contract module — DatasetContract schema, featuresmith.lock, and featuresmith lock --check
Medium-TermPlanned

Continuous Certification, Observability & Stability (v0.6 → v1.0)

  • Portable 'Featuresmith-verified' badge linked to featuresmith verify <hash>
  • Quality History storage abstraction & time-series quality tracking
  • Scheduled local re-reviews & regression alerts (Slack, email, webhook)
  • CI/CD contract drift gating (featuresmith-action GitHub Action)
  • v1.0.0 Stable Dataset Contract & public API freeze milestone
Long-TermFuture

AI Assistance, Ecosystem Exporters & Scale (v1.1 → v2.0+)

  • AIProvider protocol (Ollama local default, OpenAI/Anthropic BYO-key), narrative summaries, and NL Plan authoring
  • dbt model-stub and Feast feature-definition code exporters
  • MLflow and Weights & Biases run-metadata attachments with Contract fingerprints
  • Pushdown profiling connectors (DuckDB, Snowflake, BigQuery) & optional Spark/Ray profiler backend
  • Hosted dashboard tier for team collaboration and shared history

Open Source

Built in the open.
For everyone.

Featuresmith is Apache 2.0-licensed and developed entirely in public. Every design decision, API change, and roadmap item is visible on GitHub. We believe the best tools are built with the community, not for it.

License
Apache 2.0
Unit Tests
311 Passing
Type Safety
Strict MyPy
Data Security
Local-Only

1. Install

Add Featuresmith SDK and CLI to your environment.

pip install featuresmith-cli

2. Read Docs

Dive into installation guides, CLI details, and SDK references.

Go to Documentation

3. Contribute

Add custom rules or connectors. View guidelines on GitHub.

View Contributor Guide
Featuresmith Icon
Featuresmith

Open-source data profiling and validation for Python engineers.

Documentation

  • Introduction
  • Quick Start
  • Python SDK
  • CLI Reference

Community

  • GitHub
  • Discussions
  • Issues
  • Contributing

Project

  • Roadmap
  • Release status
  • Benchmarks
  • Changelog
  • Examples

Legal

  • Apache 2.0 License
  • Code of Conduct
  • Security

© 2026 Featuresmith Contributors. Released under the Apache 2.0 License.

Built by Aditya Gangwani in the open.