← Back to all products

Data Contract Framework

$59

Complete data contract implementation with YAML spec, CLI generator, schema validation, SLA monitoring, and breaking change detection.

📁 17 files🏷 v1.0.0
PythonYAMLMarkdownJSONDatabricksDelta LakeCI/CD

📁 File Structure 17 files

data-contract-framework/ ├── README.md ├── cli/ │ ├── contract_generator.py │ └── contract_validator.py ├── guides/ │ └── implementation_guide.md ├── notebooks/ │ ├── breaking_change_detector.py │ ├── contract_compliance_dashboard.py │ └── sla_monitoring.py ├── registry/ │ └── contract_registry.py ├── spec/ │ ├── contract_schema.yaml │ └── example_contracts/ │ ├── customer_events.yaml │ ├── financial_transactions.yaml │ └── product_catalog.yaml └── templates/ ├── contract_templates/ │ ├── api_source.yaml │ ├── database_source.yaml │ └── file_source.yaml └── producer_consumer_agreement.md

📖 Documentation Preview README excerpt

Data Contract Framework

Product by [Datanest Digital](https://datanest.dev)

A production-ready framework for defining, validating, and monitoring data contracts across

your data platform. Enforce schema guarantees, SLA compliance, and breaking change detection

with a structured, version-controlled approach to data ownership.

What's Included

| Component | Description |

|---|---|

| spec/ | YAML-based contract specification format with example contracts |

| cli/ | Command-line tools for generating and validating contracts |

| notebooks/ | Databricks notebooks for SLA monitoring, breaking change detection, and compliance dashboards |

| registry/ | Contract catalog with full versioning and search support |

| templates/ | Ready-to-use contract templates and producer/consumer agreement |

| guides/ | Step-by-step implementation guide |

Quick Start

1. Define a Contract


contract:
  name: customer_events
  version: 1.0.0
  owner:
    team: data-engineering
    contact: team-lead@company.com
  schema:
    fields:
      - name: event_id
        type: string
        required: true
        description: Unique event identifier
      - name: event_timestamp
        type: timestamp
        required: true
        description: UTC timestamp of the event
  sla:
    freshness:
      max_delay_minutes: 30
    completeness:
      min_percentage: 99.5

2. Generate Contracts from Existing Tables


python cli/contract_generator.py \
  --catalog main \
  --schema analytics \
  --table customer_events \
  --output spec/example_contracts/

3. Validate Data Against Contracts



*... continues with setup instructions, usage examples, and more.*

📄 Code Sample .py preview

cli/contract_generator.py """ Data Contract Generator — CLI Tool Datanest Digital — https://datanest.dev Generates data contract YAML files from existing Databricks Unity Catalog tables. Introspects table schemas, column metadata, and table properties to produce a ready-to-customize contract definition. Usage: python contract_generator.py --catalog main --schema analytics --table events --output ./contracts/ python contract_generator.py --catalog main --schema analytics --all --output ./contracts/ """ from __future__ import annotations import argparse import json import re import sys from dataclasses import dataclass, field from datetime import datetime, timezone from pathlib import Path from typing import Any, Optional try: import yaml except ImportError: print("ERROR: PyYAML is required. Install with: pip install pyyaml>=6.0") sys.exit(1) # --------------------------------------------------------------------------- # Data models # --------------------------------------------------------------------------- @dataclass class FieldSpec: """Represents a single field in a data contract schema.""" name: str type: str required: bool = True description: str = "" pii: bool = False primary_key: bool = False constraints: dict[str, Any] = field(default_factory=dict) @dataclass class ContractSpec: # ... 387 more lines ...