finds.dev← search

// the find

javascriptdata/danfojs

★ 5,062 · TypeScript · MIT · updated Apr 2026

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

Danfo.js is a pandas-style DataFrame and Series library for JavaScript, published as danfojs for browsers and danfojs-node for Node. It is aimed at JavaScript developers who need tabular data work inside an existing Node service or browser dashboard, and at people porting pandas workflows who want the method names to carry over.

The method names are the main draw. loc, iloc, groupby, merge, concat, query, the one-hot and label encoders, and the standard and min-max scalers all mirror pandas, so a Python notebook translates almost line for line. DataFrame.tensor hands the data to TensorFlow.js without a manual conversion step, which matters if the next stop is a model rather than a chart. The Node package includes a CSV stream transformer in src/danfojs-node/src/streams for processing files without loading them whole, and there is a performance-test.js at the root, which is at least a start on checking the speed claims.

The library is split across three source trees (src/danfojs-base, src/danfojs-browser, src/danfojs-node), each with its own package.json and lockfile. frame.ts and series.ts exist in all three, so a fix in one can easily miss the others. The README calls the library fast without a single benchmark number, and it never mentions the performance-test.js sitting at the root. Two yarn-error.log files are committed under the browser and node packages, which is minor but shows in a fresh clone. The last push was 15 April 2026, about six months ago, so check the open issues and confirm the pandas behaviour you depend on still matches before putting it on a production path.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →