# apache/hamilton

Apache Hamilton helps data scientists and engineers define testable, modular, self-documenting dataflows, that encode lineage/tracing and metadata. Runs and scales everywhere python does.

Repository: https://github.com/apache/hamilton
Canonical: https://ross.abutalabs.com/products/hamilton
Homepage: https://hamilton.apache.org/
Language: Jupyter Notebook
License: Apache-2.0
License Family: permissive
Topics: data-science, python, dag, data-engineering, dataframe, etl, etl-framework, etl-pipeline, feature-engineering, machine-learning, pandas, software-engineering, data-analysis, lineage, llmops, mlops, orchestration, hacktoberfest, rag
Last push: 2026-08-19T04:38:48+00:00

## Health v2 (maintenance only)
Score: 91/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 81, longevity 91
- inputs: {"age_days": 1287, "days_push": 14, "days_rel": 130, "gap_med": 7.0, "n_releases_24m": 23}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2575, forks 212 (observed 2026-08-28T04:07:02.157842+00:00)

## What it is
Apache Hamilton is a lightweight Python library for defining directed acyclic graphs (DAGs) of data transformations as plain, testable Python functions. It encodes lineage, tracing, and metadata automatically and integrates with tools like pandas, Polars, Spark, Airflow, FastAPI, and Streamlit.

## Use cases
- build modular etl pipelines in python
- define testable data transformation dags
- track data lineage for pandas dataframes
- feature engineering pipelines for machine learning
- orchestrate llm and rag workflows
- visualize and document dataflows
- add data quality checks to pipelines

## When to choose
- you want declarative, function-based dataflows with automatic lineage in pure Python
- you need testable, reusable transformation logic across notebooks, ETL jobs, and services
- you want a lightweight alternative to heavyweight orchestrators for dataflow definition

## When to avoid
- you need full-fledged workflow scheduling and cron-style orchestration like Airflow provides
- your team prefers SQL-first or notebook-first transformation tools like dbt
- you only need simple one-off scripts with no reuse or lineage requirements

## Facets
- artifact type: library
- maturity: active
- function: etl, data-science, machine-learning, rag, workflow-automation, testing, monitoring
- domain: data-science, machine-learning, developer-tools
- platform: python, cross-platform
- tags: dag, dataflow, lineage, dataframe, pandas, feature-engineering, mlops, llmops, orchestration, data-quality, data-engineering, automation

## Member repositories
- apache/hamilton (main) score 91

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:02.157842+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:22:44.157675+00:00, confidence not recorded.
  - readme: https://github.com/apache/hamilton (fetched 2026-08-28T04:07:02.157842+00:00, sha 89da5643d0ad)
  - homepage: https://hamilton.apache.org/ (fetched 2026-08-29T10:05:31.891108+00:00, sha 3f2ef54c11e9)
  - site_page: https://hamilton.apache.org/get-started/install (fetched 2026-08-29T10:05:31.933485+00:00, sha 990596cc24ca)
  - site_page: https://hamilton.apache.org/integrations/fastapi (fetched 2026-08-29T10:05:32.019510+00:00, sha a29d53f83419)
  - site_page: https://hamilton.apache.org/integrations/ibis (fetched 2026-08-29T10:05:32.022965+00:00, sha 4727d8044edd)
  - site_page: https://hamilton.apache.org/integrations/streamlit (fetched 2026-08-29T10:05:32.025840+00:00, sha 829287c9d7d5)
  - site_page: https://hamilton.apache.org/concepts/ui (fetched 2026-08-29T10:05:32.002044+00:00, sha 61f47e97a614)
  - site_page: https://hamilton.apache.org/hamilton-ui/ui (fetched 2026-08-29T10:05:32.011321+00:00, sha 8e90f2b27967)
  - site_page: https://hamilton.apache.org/integrations (fetched 2026-08-29T10:05:32.013918+00:00, sha 82e54ca70cc6)
  - site_page: https://hamilton.apache.org/integrations/dlt (fetched 2026-08-29T10:05:32.016389+00:00, sha 839beac9abf0)
- Data as of 2026-08-30T08:39:29.467469+00:00.
