narwhals-dev/narwhals
Lightweight and extensible compatibility layer between dataframe libraries! observed · 2026-08-28
Health v2 · maintenance only
88/100
- Activity 99
- Release rhythm 86
- Longevity 66
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 3
- age_days: 926
- days_rel: 13
- days_push: 7
- n_releases_24m: 120
Adoption not part of the score
1708 stars · 211 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Narwhals is a lightweight, zero-dependency Python compatibility layer that lets code written against a subset of the Polars API run on pandas, Polars, PyArrow, cuDF, Modin, Dask, DuckDB, Ibis, PySpark, and more. It is aimed at library authors who want to make their dataframe-consuming code dataframe-agnostic without hard dependencies on any specific backend.
Use cases
- write dataframe-agnostic library code that works with pandas and polars
- support multiple dataframe backends without adding dependencies
- migrate code between pandas and polars with minimal changes
- run the same dataframe logic on spark, duckdb, or dask
- build a tool that accepts any dataframe library as input
- use polars expressions api on top of pandas dataframes
When to choose
- you are building a library or service that consumes dataframes and want backend flexibility
- you want zero-dependency interoperability across dataframe libraries
- you prefer the polars api but need to support pandas users
- you need lazy and eager dataframe support with full static typing
When to avoid
- you only ever use a single dataframe library and need no interoperability
- you need dataframe features outside narwhals' supported api subset
- you want a full dataframe implementation rather than a compatibility layer
Facets
library · maturity active
data-science developer-tools data-science developer-tools python dataframes interoperability compatibility-layer polars-api pandas zero-dependency data-engineering
3 sources
- readme: https://github.com/narwhals-dev/narwhals · fetched 2026-08-28 · a6e81940714e
- homepage: https://narwhals-dev.github.io/narwhals/ · fetched 2026-08-29 · 475586a018fb
- registry_pypi: https://pypi.org/pypi/narwhals/json · fetched 2026-08-29 · cc2099712a7d
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| narwhals-dev/narwhals | main | 88 |
For agents
markdown · JSON · MCP: product_card(name="narwhals-dev/narwhals")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem