Skip to content
A curated list of awesome data science libraries that can run in a browser
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Awesome Browser Data Science Libraries Awesome

A curated list of awesome libraries for doing data science that can run in your browser. That doesn't just mean Javascript: thanks to WebAssembly, many data science libraries from other languages are now available in the browser.

If you want to contribute to this list (please do), file a pull request.

Also, a listed repository should be deprecated if:

  • Repository's owner explicitly say that "this library is not maintained".
  • Not committed for long time (2~3 years).


  • Observable: The magic notebook for Exploring Data
  • Runkit: A Node Playground in your Browser
  • Iodide: lets you do data science entirely in your browser
  • Carbide: A Reactive Javascript programming environment
  • Kaggle Notebooks: Run Analyses on Google Cloud using Python or R

Data Formats

  • Papa Parse: Powerful, in-browser CSV parser
  • js-xlsx: Parser and writer for various spreadsheet formats
  • Apache Arrow: Enable big data systems to process and transfer data quickly

Data Munging

  • sql.js: SQLite compiled to JavaScript through Emscripten
  • Lodash: A modern JavaScript utility library delivering modularity, performance & extras
  • jq-web: the command-line JSON processor, compiled with emscripten and exposed as JavaScript library
  • datalib: a JavaScript data utility library
  • zebras: a data manipulation and analysis library written in JavaScript offering the convenience of pandas or R


  • mathjs: An extensive math library for JavaScript and Node.js
  • bluemath: Math kernel in Javascript
  • libRmath.js: Javascript Pure Implementation of Statistical R "core" numerical
  • stdlib: A standard library for Javascript, with an emphasis on numerical and scientific computing applications.
  • Simple Statistics: Statistical methods in readable JavaScript for browsers, servers, and people
  • jStat: perform advanced statistical operations

Machine learning

  • mljs: Machine learning tools in JavaScript
  • machinelearn.js: Machine Learning library for the web and Node

Natural Language Processing

  • Natural: general natural language facilities for node
  • node-nlp: A Fork of Natural with many additional capabilities
  • sentiment: AFINN-based sentiment analysis for Node.js
  • compromise: interprets and pre-parses English
  • wink: Open Source packages for NLP, ML and Statistics in Node JS to build production grade solutions
  • twitter-text-js: A JavaScript utility that provides text processing routines for Tweets
  • Knwl.js: Find Dates, Places, Times, and More. A .js library for parsing text for specific information
  • Talisman: A straightforward & modular NLP, machine learning & fuzzy matching library for JavaScript
  • Franc: Natural language detection
  • Underscore.string: Not actually an NLP library, but a useful toolkit for working with strings in Javascript

Deep Learning

  • TensorFlow.js: TensorFlow.js is a library for developing and training ML models in JavaScript, and deploying in browser or on Node.js
  • ml5: Friendly Machine Learning for the Web
  • WebDNN: Fastest DNN Execution Framework on Web Browser
  • brain.js: Neural networks in JavaScript


  • D3: Data-driven documents
  • C3.js: D3-based reusable chart library
  • Vega: A Visualization Grammar
  • Plotly.js: General-purpose data visualization
  • Nivo: A rich set of dataviz components, built on top of the awesome d3 and Reactjs libraries
  • Chart.js: Simple yet flexible JavaScript charting for designers & developers
  • sigmajs: a JavaScript library dedicated to graph drawing
  • falcon: Interactive Visual Analysis for Big Data. Crossfilter millions of records without latencies

Other languages

  • Pyodide: The scientific Python stack, compiled to WebAssembly.
You can’t perform that action at this time.