Featuresmith Icon
Featuresmith
  • Docs
  • SDK
  • CLI
  • Examples
  • Roadmap
v0.4.0
Documentation

Getting Started

  • Introduction
  • Installation
  • Quick Start
  • Tutorial Notebooks
  • Benchmarks
  • Development Setup
  • Contributing

Core Concepts

  • Architecture Overview
  • Dataset Layer
  • Connectors
  • Profiling Engine
  • Rule Engine
  • Dataset Review Engine
  • ML Readiness Score
  • Target Leakage Detection
  • Dataset Diff Engine
  • Target Column Concept
  • Mental Model & Workflow
  • Interpreting Findings
  • Workflow Cheat Sheet
  • Beginner Glossary

Python SDK

  • load()
  • profile()
  • analyze()
  • review()
  • diff()
  • score()
  • plan()
  • Dataset
  • Data Models
  • Profile Models
  • Rule & Finding Models
  • Review Models
  • Score Models
  • Leakage Models
  • Diff Models
  • Exceptions
  • Plugins

CLI Reference

  • analyze
  • review
  • diff
  • score
  • plan
  • Configuration

Guides

  • CI/CD Integration
  • Custom Rules
  • Writing Plugins

Resources

  • Release Notes
  • FAQ
  • Troubleshooting
DocsGuide

Getting Started

  • Introduction
  • Installation
  • Quick Start
  • Tutorial Notebooks
  • Benchmarks
  • Development Setup
  • Contributing

Core Concepts

  • Architecture Overview
  • Dataset Layer
  • Connectors
  • Profiling Engine
  • Rule Engine
  • Dataset Review Engine
  • ML Readiness Score
  • Target Leakage Detection
  • Dataset Diff Engine
  • Target Column Concept
  • Mental Model & Workflow
  • Interpreting Findings
  • Workflow Cheat Sheet
  • Beginner Glossary

Python SDK

  • load()
  • profile()
  • analyze()
  • review()
  • diff()
  • score()
  • plan()
  • Dataset
  • Data Models
  • Profile Models
  • Rule & Finding Models
  • Review Models
  • Score Models
  • Leakage Models
  • Diff Models
  • Exceptions
  • Plugins

CLI Reference

  • analyze
  • review
  • diff
  • score
  • plan
  • Configuration

Guides

  • CI/CD Integration
  • Custom Rules
  • Writing Plugins

Resources

  • Release Notes
  • FAQ
  • Troubleshooting
HomeDocsQuick Start

Getting Started

Quick Start

Get up and running with the SDK and CLI in under 5 minutes

Featuresmith is designed to serve identical, deterministic results whether you are running scripted pipelines in Python, exploring interactive Jupyter notebooks, or triggering quality gates in the terminal.

Interactive Tutorial Notebooks (Recommended)

The fastest way to master Featuresmith v0.4.0 is through our official hands-on Jupyter notebook series in examples/notebooks/:

01. Getting Started

Dataset loading (fs.load), statistical profiling (fs.profile), automated review (fs.review), and readiness scoring (fs.score).

01_getting_started.ipynb
02. Complete Dataset Review

Deep dive into the 10 automated reviewers, finding severities, and section categories.

02_dataset_review.ipynb
03. ML Readiness Score

Understanding 0–100 scorecards, mathematical dimension weights, and actionable remediation suggestions.

03_ml_readiness_score.ipynb
04. Intelligent Leakage Detection

Catching target correlations, future timestamps, identifier shapes, and duplicate target copies.

04_leakage_detection.ipynb
05. Dataset Diff Engine

Comparing dataset versions (fs.diff) to detect schema drift, missingness spikes, and quality regressions.

05_dataset_diff.ipynb
06. End-to-End Validation Gate

Building a production Python pre-training quality gate function to protect model training jobs.

06_end_to_end_workflow.ipynb

Explore all interactive tutorials on the Examples & Tutorials Page or on GitHub.

Python SDK Quick Start

Run a dataset review using the pre-packaged titanic.csv dataset:

python
1import featuresmith as fs
2
3# 1. Load the dataset (CSV, Parquet, Excel, pandas/Polars DataFrame)
4dataset = fs.load("examples/data/processed/titanic.csv")
5print(f"Loaded {dataset.row_count} rows across {dataset.column_count} columns.")
6
7# 2. Extract deterministic statistical profile
8profile = fs.profile(dataset)
9print(f"Missingness: {profile.dataset_summary.missing_percentage:.2f}%")
10
11# 3. Perform automated dataset code review with 10 reviewers
12review_result = fs.review(dataset, target_column="survived")
13print(review_result.overall_summary)
14
15# 4. Extract explainable 0–100 ML Readiness Scorecard
16scorecard = fs.score(review_result)
17if scorecard:
18 print(f"ML Readiness Score: {scorecard.overall:.1f}/100")

CLI Quick Start

Verify dataset issues inside your shell:

bash
1# Run a complete review report with scorecard
2featuresmith review examples/data/processed/titanic.csv --target survived
3
4# Run target leakage and quality rule analysis
5featuresmith analyze examples/data/processed/titanic.csv --target survived
6
7# Compare two snapshot profiles (Dataset Diff Engine)
8featuresmith diff examples/data/processed/titanic.csv examples/data/processed/titanic.csv --target survived

The diff example compares the bundled titanic.csv against itself, returning an unchanged verdict. Point featuresmith diff at two different snapshots to detect schema and quality drift.

CLI Exit Codes

The CLI uses precise exit codes to facilitate pipeline integration and gating:

Exit CodeDescription
0Clean — no rule violations detected at or above the threshold.
1Findings detected — one or more rules triggered at or above threshold.
2Invalid input — bad flags, missing arguments, or columns not in schema.
3File load failure — file does not exist, or parser error.
4Unexpected internal error (use --verbose for traceback).

Explore

  • Quick Start
  • Python SDK
  • CLI Reference
  • Examples
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.