{"slug": "narwhals", "name": "Narwhals", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 2, "commenters": 2, "warners": 0, "score": 1.877, "rising": -0.65, "first": "2026-07-16", "latest": "2026-07-30", "why": "They're much easier to use now thanks to the Narwhals compatibility layer", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 2, "neutral": 0, "compare": 0, "warn": 0}, "spark": [0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0], "listed": false, "loved": [], "caveat": "", "short_quote": "They're much easier to use now thanks to the Narwhals compatibility layer", "icon": false, "domain": null, "github_repo": null, "official_url": "", "pricing": "", "aliases": ["Narwhals"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 785799186, "item_id": 49112449, "url": "https://news.ycombinator.com/item?id=49112449", "by": "westurner", "date": "2026-07-30", "stance": "recommend", "quote": "Narwhals' df interface (Python)", "excerpt": "Would there be an advantage to reusing SIMD-optimized libraries for this? Polars Rust is built on Arrow and packed_simd. pola-rs/polars: https://github.com/pola-rs/polars polars - Rust API docs: https://docs.pola.rs/api/rust/dev/polars/#simd lancedb's data format; Lancedb/lance works with [Pandas, DuckDB, Polars, PyArrow,]; https://github.com/lancedb/lance Narwhals' df interface (Python) https://narwhals-dev.github.i", "context": "", "use_case": "dataframe interface", "switched_from": "", "story": "Postgres rewritten in Rust v0.2, now faster than Postgres and ClickHouse"}, {"id": 783023361, "item_id": 48938960, "url": "https://news.ycombinator.com/item?id=48938960", "by": "sdpy", "date": "2026-07-16", "stance": "recommend", "quote": "They're much easier to use now thanks to the Narwhals compatibility layer", "excerpt": "Just to add, people in my network have been talking about polars (as an alternative to pandas) and other dataframe libraries. They're much easier to use now thanks to the Narwhals compatibility layer (for example, Narwhals was recently added as a dependency to scikit-learn).", "context": "", "use_case": "dataframe compatibility layer", "switched_from": "", "story": "Guide to data tools landscape for developers"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["dataframe interface", "dataframe compatibility layer"], "compared": [{"slug": "polars", "name": "Polars", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49111925", "title": "Postgres rewritten in Rust v0.2, now faster than Postgres and ClickHouse", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48935510", "title": "Guide to data tools landscape for developers", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {}, "2026-05": {}, "2026-06": {}, "2026-07": {"recommend": 2}, "2026-08": {}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 785799186, "item_id": 49112449, "url": "https://news.ycombinator.com/item?id=49112449", "by": "westurner", "date": "2026-07-30", "stance": "recommend", "quote": "Narwhals' df interface (Python)", "excerpt": "Would there be an advantage to reusing SIMD-optimized libraries for this? Polars Rust is built on Arrow and packed_simd. pola-rs/polars: https://github.com/pola-rs/polars polars - Rust API docs: https://docs.pola.rs/api/rust/dev/polars/#simd lancedb's data format; Lancedb/lance works with [Pandas, DuckDB, Polars, PyArrow,]; https://github.com/lancedb/lance Narwhals' df interface (Python) https://narwhals-dev.github.i", "context": "", "use_case": "dataframe interface", "switched_from": "", "story": "Postgres rewritten in Rust v0.2, now faster than Postgres and ClickHouse"}, {"id": 783023361, "item_id": 48938960, "url": "https://news.ycombinator.com/item?id=48938960", "by": "sdpy", "date": "2026-07-16", "stance": "recommend", "quote": "They're much easier to use now thanks to the Narwhals compatibility layer", "excerpt": "Just to add, people in my network have been talking about polars (as an alternative to pandas) and other dataframe libraries. They're much easier to use now thanks to the Narwhals compatibility layer (for example, Narwhals was recently added as a dependency to scikit-learn).", "context": "", "use_case": "dataframe compatibility layer", "switched_from": "", "story": "Guide to data tools landscape for developers"}]}