# ibis-project/ibis

the portable Python dataframe library

Repository: https://github.com/ibis-project/ibis
Canonical: https://ross.abutalabs.com/products/ibis
Homepage: https://ibis-project.org
Language: Python
License: Apache-2.0
License Family: permissive
Topics: python, impala, pandas, database, clickhouse, postgresql, sqlite, mysql, datafusion, sql, pyspark, duckdb, bigquery, pyarrow, mssql, polars, snowflake, trino
Last push: 2026-08-26T17:14:36+00:00

## Health v2 (maintenance only)
Score: 89/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 69, longevity 100
- inputs: {"age_days": 4156, "days_push": 7, "days_rel": 207, "gap_med": 15, "n_releases_24m": 14}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 6643, forks 755 (observed 2026-08-28T04:09:47.199543+00:00)

## What it is
Ibis is a portable Python dataframe library that provides a single lazy dataframe API across more than 20 execution backends including DuckDB, Polars, Postgres, BigQuery, and Spark. It compiles Python dataframe expressions to SQL or native backend code, letting users iterate locally and deploy remotely by changing one line.

## Use cases
- query databases with a python dataframe api instead of writing sql
- analyze parquet files locally with duckdb
- write analytics code once and run it on snowflake, bigquery, or postgres
- mix python dataframe code with sql in one workflow
- prototype data pipelines locally then deploy to a warehouse
- explore datasets interactively in a notebook
- migrate pandas workflows to a scalable sql engine

## When to choose
- you want one dataframe API that works across many SQL engines and local engines
- you need lazy evaluation and deferred execution for large datasets
- you want to bridge python data science code with SQL-based data engineering
- you iterate on small local data but production runs on a warehouse or Spark

## When to avoid
- you only need simple in-memory pandas operations with no backend portability
- you need fine-grained control over engine-specific SQL features
- your team already standardizes on a single engine's native API

## Facets
- artifact type: library
- maturity: active
- function: data-science, etl, database, parser
- domain: data-science, databases, analytics, big-data
- platform: python, cross-platform
- tags: dataframe, lazy-evaluation, sql-generation, duckdb, pandas, polars, pyspark, bigquery, snowflake, portable-api, data-exploration, sql, data-engineering

## Member repositories
- ibis-project/ibis (main) score 89

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:47.199543+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-29T17:43:11.227338+00:00, confidence not recorded.
  - readme: https://github.com/ibis-project/ibis (fetched 2026-08-28T04:09:47.199543+00:00, sha e0dd2c7a713b)
  - homepage: https://ibis-project.org (fetched 2026-08-29T08:39:25.205249+00:00, sha 0843d63599c1)
  - site_page: https://ibis-project.org/install (fetched 2026-08-29T08:39:25.215106+00:00, sha a36410197704)
- Data as of 2026-08-30T08:39:29.467469+00:00.
