# Turbine

Contract-driven data quality for data products. You declare a table's schema,
ownership, freshness, and validity rules in one YAML contract; Turbine validates
the contract, checks the live database against it, runs the quality checks, scores
the result, and exposes everything over a REST API and dashboard.

This documentation follows the [Diátaxis](https://diataxis.fr/) framework. Pick the
quadrant that matches what you are trying to do.

<div class="grid cards" markdown>

-   :material-school: __[Tutorials](tutorials/index.md)__

    ---

    Learning-oriented lessons. Start here if you are new to Turbine and want a
    guided path from nothing to a passing check.

-   :material-wrench: __[How-to guides](how-to/index.md)__

    ---

    Task-oriented recipes. Use these when you already know Turbine and need to get
    a specific job done.

-   :material-book-open-variant: __[Reference](reference/index.md)__

    ---

    Information-oriented description of the CLI, the contract schema, and the API.
    Look here for exact flags, fields, and defaults.

-   :material-lightbulb: __[Explanation](explanation/index.md)__

    ---

    Understanding-oriented discussion of how Turbine works and why it is built the
    way it is.

</div>
