Assembly Line

Open-source dataframe libraries and notebooks in 2026

31 open-source projects, ranked by GitHub stars and how recently each was worked on. Pandas leads with 50k stars, ahead of DuckDB. 28 had code pushed in the last three months. Most common licenses: Apache-2.0 (11), MIT (10) and BSD-3-Clause (7).

Open-source dataframe libraries and notebooks

Frameworks and platforms to build on 1

  1. 1
    Apache Hamilton apache

    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.

    Framework or platform Usable Your feature engineering or ETL code has grown into tangled scripts and you want modular, documented steps without a heavy orchestrator.

    ★ 2.6k Apache-2.0 Jupyter Notebook Active, pushed 2 days ago

Building blocks for your own system 25

  1. 1
    pandas pandas-dev

    Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more

    Building block Production-ready You analyse spreadsheets, CSVs or database extracts in Python.

    ★ 50k BSD-3-Clause Python Active, pushed today
  2. 2
    DuckDB duckdb

    DuckDB is a high-performance analytical database system

    Building block Production-ready You analyse data that fits on one machine and want fast SQL without running a server.

    ★ 43k MIT C++ Active, pushed 6 days ago
  3. 3
    Polars pola-rs

    Extremely fast Query Engine for DataFrames, written in Rust

    Building block Production-ready Your pandas workloads are slow or run out of memory on a single machine and you can rewrite them in Polars' expression API.

    ★ 40k MIT Rust Active, pushed today
  4. 4
    cuDF NVIDIA

    cuDF - GPU DataFrame Library

    Building block Production-ready You process large tabular data and have NVIDIA GPUs available, especially to speed up existing pandas or Polars code.

    ★ 9.8k Apache-2.0 C++ Active, pushed today
  5. 5
    DataFusion apache

    Apache DataFusion SQL Query Engine

    Building block Production-ready You are building your own database, query service or data tool and want an embeddable query engine.

    ★ 9.6k Apache-2.0 Rust Active, pushed today
  6. 6
    Vaex vaexio

    Out-of-Core hybrid Apache Arrow/NumPy DataFrame for Python, ML, visualization and exploration of big tabular data at a billion rows per second 🚀

    Building block Usable You need to explore very large tabular files on one machine and they are already in HDF5 or Arrow format.

    ★ 8.5k MIT Python Active, pushed today
  7. 7
    Mimesis lk-geimfari

    Mimesis is a Python library for generating fake but realistic data in multiple languages and locales.

    Building block Production-ready You need lots of fake data for test databases, fixtures or demos and want something faster than Faker.

    ★ 4.9k MIT Python Active, pushed 2 days ago
  8. 8
    Tablesaw jtablesaw

    Java dataframe and visualization library

    Building block Usable You work with tabular data inside a Java application and do not want to bring in Python or Spark.

    ★ 3.8k Apache-2.0 Java Active, pushed 3 months ago
  9. 9
    C++ DataFrame hosseinmoein

    C++ DataFrame for statistical, financial, and ML analysis in modern C++

    Building block Usable You do data analysis or trading research inside a C++ system and want pandas-like operations without Python.

    ★ 3k BSD-3-Clause C++ Active, pushed today
  10. 10
    ConnectorX sfu-db

    Fastest library to load data from DB to DataFrames in Rust and Python

    Building block Usable Loading large query results into DataFrames is a bottleneck in your Python pipeline.

    ★ 2.7k MIT Rust Active, pushed today
  11. 11
    Modin modin-project

    Modin: Scale your Pandas workflows by changing a single line of code

    Building block Usable You have existing pandas code that is too slow on larger data and cannot rewrite it for Polars or Spark.

    ★ 10k Apache-2.0 Python Slowing, pushed 9 months ago
  12. 12
    Ballista apache

    Apache DataFusion Ballista Distributed Query Engine

    Building block Usable You already build on DataFusion in Rust or Python and a single machine no longer holds or processes your data fast enough.

    ★ 2.2k Apache-2.0 Rust Active, pushed today
  13. 13
    Skrub skrub-data

    Machine learning with dataframes

    Building block Usable You train scikit-learn models on real-world tables with dirty categories and several related tables.

    ★ 1.7k BSD-3-Clause Python Active, pushed yesterday
  14. 14
    Optopsy goldspanlabs

    A nimble options research and backtesting library for Python

    Building block Usable You research options trading strategies in Python and already have historical option chain data.

    ★ 1.5k AGPL-3.0 Python Active, pushed yesterday
  15. 15
    Pyjanitor pyjanitor-devs

    Clean APIs for data cleaning. Python implementation of R package Janitor

    Building block Usable You clean data in pandas and want readable method chains for common chores.

    ★ 1.5k MIT Python Active, pushed yesterday
  16. 16
    Danfo.js javascriptdata

    Danfo.js is an open source, JavaScript library providing high performance, intuitive, and easy to use data structures for manipulating and processing structured data.

    Building block Usable You need pandas-style data manipulation in a browser or Node.js app.

    ★ 5.1k MIT TypeScript Slowing, pushed 7 months ago
  17. 17
    GraphFrames graphframes

    GraphFrames is a package for Apache Spark which provides DataFrame-based Graphs

    Building block Usable You already run Spark and need graph analytics, such as fraud rings or identity resolution, on billions of edges.

    ★ 1.2k Apache-2.0 Scala Active, pushed 5 days ago
  18. 18
    Kotlin DataFrame Kotlin

    Kotlin DataFrame: typesafe in-memory structured data processing for JVM

    Building block Usable You analyse data in Kotlin, for example in Kotlin notebooks, and want compile-time checks on column access.

    ★ 1.1k Apache-2.0 Kotlin Active, pushed today
  19. 19
    Technical freqtrade

    Various indicators developed or collected for the Freqtrade

    Building block Usable You write Freqtrade crypto trading strategies and need indicators that TA-Lib does not include.

    ★ 1k GPL-3.0 Python Active, pushed today
  20. 20
    Spark-daria mrpowers-io

    Essential Spark extensions and helper methods ✨😲

    Building block Usable You write Spark jobs in Scala and keep rewriting the same DataFrame helpers and validations.

    ★ 766 MIT Scala Active, pushed 35 days ago
  21. 21
    Tech.ml.dataset techascent

    A Clojure high performance data processing system

    Building block Usable Your team works in Clojure and needs pandas-style data processing on the JVM.

    ★ 763 EPL-1.0 Clojure Active, pushed 34 days ago
  22. 22
    Peroxide Axect

    Rust numeric library with high performance and friendly syntax

    Building block Usable You do scientific computing in Rust and want one crate with friendly syntax instead of combining several.

    ★ 732 Apache-2.0 Rust Active, pushed 3 months ago
  23. 23
    Pdpipe pdpipe

    Easy pipelines for pandas DataFrames.

    Building block Usable You repeat the same pandas preprocessing in several places and want it as a named, inspectable pipeline.

    ★ 731 MIT Jupyter Notebook Active, pushed 31 days ago
  24. 24
    Dataframely Quantco

    A declarative, 🐻‍❄️-native data frame validation library.

    Building block Usable Your data pipelines use Polars and you want declared schemas and rule checks instead of ad hoc asserts.

    ★ 626 BSD-3-Clause Python Active, pushed 2 days ago
  25. 25
    SlothDB SouravRoy-ETL

    An experimental embedded SQL engine in C++20. Query Parquet, CSV, JSON, Arrow, Avro, SQLite, and Excel files directly with SQL, in-process. Early-stage.

    Building block Experimental You want to study or experiment with a small embedded analytical engine and can tolerate early-stage behavior.

    ★ 412 MIT C++ Slowing, pushed 5 months ago

Integrations 1

  1. 1
    Spark-Redis RedisLabs

    A connector for Spark that allows reading and writing to/from Redis cluster

    Integration Usable Your Spark jobs need to load from or write to Redis, such as feeding a cache or feature store.

    ★ 944 BSD-3-Clause Scala Active, pushed 24 days ago

Developer tools 4

  1. 1
    marimo marimo-team

    A reactive notebook for Python — run reproducible experiments, query with SQL, execute as a script, deploy as an app, and version with git. Stored as pure Python. All in a modern, AI-native editor.

    Developer tool Usable Notebooks need to live in git, rerun reproducibly and double as small internal data apps without moving to Streamlit.

    ★ 23k Apache-2.0 Python Active, pushed today
  2. 2
    PyGWalker Kanaries

    PyGWalker: Turn your dataframe into an interactive UI for visual analysis

    Developer tool Usable Data analysts want to explore a DataFrame visually without writing plotting code.

    ★ 16k Apache-2.0 Python Active, pushed 2 months ago
  3. 3
    JupyterLab jupyterlab

    JupyterLab computational environment.

    Developer tool Production-ready Data teams work in notebooks all day and want several notebooks, consoles and files open side by side, with extensions installed from PyPI.

    ★ 15k BSD-3-Clause TypeScript Active, pushed today
  4. 4
    Jupyter Notebook jupyter

    Jupyter Interactive Notebook

    Developer tool Production-ready Analysts or researchers want the familiar single-document notebook interface for exploring data and sharing worked examples.

    ★ 13k BSD-3-Clause Jupyter Notebook Active, pushed 6 days ago

Open-source licenses

  • Permissive: 28. Use it anywhere, including in closed products. You keep the copyright notice; Apache-2.0 also grants patent rights.
  • Network copyleft: 1. Like GPL, and running a changed version as a web service counts as distributing it, so its users get the source too.
  • Strong copyleft: 1. If you distribute the program or anything built on it, you must release the whole source under the same license.
  • Weak copyleft: 1. Changes to the licensed files must be shared, but you can link them into a closed program.

Languages

Python 11, Rust 5, C++ 4, Jupyter Notebook 3, Scala 3, TypeScript 2, Java 1, Kotlin 1 and Clojure 1.

Made software that belongs here? Add it. Listing is free.