For a javascript library for parsing csv files, the strongest matches are mholt/papaparse (PapaParse is a comprehensive CSV processing library that supports), adaltas/node-csv (This library provides a comprehensive suite for CSV parsing) and sheetjs/sheetjs (SheetJS is a powerful, universal data processing library that). nicolaskruchten/pivottable and dtao/lazy.js round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
We curate open-source GitHub repositories matching “best javascript csv libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
PapaParse is a delimited text processing library that converts CSV files into JSON objects or arrays. It provides a suite of tools for parsing delimited text and transforming structured data objects back into CSV formats through bidirectional serialization. The library is characterized by its ability to process massive datasets using incremental streaming and chunk-based processing to prevent memory overload. It includes an automatic delimiter detector to identify separator characters without manual configuration and utilizes web workers to offload parsing logic to background threads, keeping
PapaParse is a comprehensive CSV processing library that supports stream-based parsing, asynchronous execution via web workers, and flexible delimiter handling, making it a robust choice for both Node.js and browser environments.
This library is a CSV data serializer and stringifier for transforming structured records into comma-separated values. It provides tools for converting data records into plain text via synchronous, callback-based, or stream-based implementations. The project distinguishes itself by offering a streaming implementation through the native Node.js Transform API, which allows for the processing of large datasets without loading all records into memory. It also includes a flexible formatting system to define specific delimiters, quotes, escape characters, and header configurations. The toolset cov
This library provides a comprehensive suite for CSV parsing and serialization that natively supports stream processing, asynchronous operations, and highly customizable formatting, making it a robust choice for handling large datasets in Node.js.
SheetJS is a comprehensive library for parsing, manipulating, and generating complex spreadsheet file formats. It functions as a universal data processor that maps diverse binary, XML, and text-based file structures into a unified internal object model, allowing developers to create, read, and transform workbook data programmatically. The library distinguishes itself through a portable logic layer that provides a consistent execution environment across web browsers, server-side runtimes, and native desktop or mobile applications. By utilizing stream-based processing, it handles large files in
SheetJS is a powerful, universal data processing library that handles CSV alongside a wide range of complex spreadsheet formats, providing the stream-based parsing and cross-platform compatibility required for robust data manipulation.
This project is a JavaScript pivot table library and client-side data processor. It provides an interactive interface for transforming raw datasets into summarized tables, heatmaps, and charts, allowing for browser-based data analysis without a backend server. The library distinguishes itself through a drag-and-drop interface for dynamic data exploration and the ability to derive new attributes via date binning or custom logic. It supports flexible data rendering by converting analyzed results into HTML tables or graphical representations using integrated or third-party charting libraries. T
This is a pivot table and data visualization library designed for interactive analysis and UI rendering rather than a low-level utility for parsing, streaming, or generating CSV files.
Lazy.js is a JavaScript library that implements a lazy evaluation model for processing collections and data streams. It defers all computation until iteration begins, building chains of transformations that execute only when values are consumed, avoiding intermediate arrays and buffering. The library wraps data sources into a uniform sequence interface, enabling operations like map and filter to be chained together without materializing intermediate results. The library extends lazy processing beyond simple collections to handle asynchronous data sources, DOM events, strings, and Node.js stre
This is a general-purpose functional programming and lazy evaluation utility library, not a specialized tool for parsing or generating CSV data.
Airbyte is a data integration platform designed to synchronize information between diverse applications, databases, and data warehouses. It functions as an extract, transform, and load orchestrator that manages automated data movement workflows across cloud, on-premise, and hybrid environments. The platform provides a standardized interface for connectors, enabling the movement of structured and unstructured data while maintaining stateful checkpoints for reliable incremental syncing. The platform distinguishes itself through a containerized architecture that isolates connectors to prevent de
This is a comprehensive data integration and ETL platform for orchestrating complex pipelines, rather than a lightweight library for parsing or manipulating individual CSV files.
VisiData is a terminal-based interactive data analysis tool and browser designed for exploring, filtering, and sorting large tabular datasets. It functions as a structured data inspector that loads and flattens complex formats like JSON, XML, and PCAP into interactive sheets, as well as a terminal file manager for navigating directories and performing staged filesystem operations. The project distinguishes itself by rendering data visualizations, such as scatter plots and histograms, directly in the terminal using Unicode Braille characters. It provides a Python-based data wrangling environme
VisiData is an interactive terminal-based data analysis application rather than a JavaScript library for programmatically parsing and manipulating CSV data in Node.js or browser environments.
DuckDB is an in-process analytical database engine designed to run directly within an application process. As a zero-dependency, embedded system, it provides enterprise-grade SQL data processing capabilities without the overhead of managing a dedicated database server. It is built to handle complex analytical and aggregation tasks by storing and retrieving information in columns, allowing for high-performance relational data manipulation. The engine distinguishes itself through a columnar vectorized execution model that maximizes CPU cache efficiency during query operations. It employs adapti
DuckDB is a high-performance analytical database engine that can ingest and query CSV files, but it is a full relational database system rather than a specialized library for parsing and manipulating CSV data.
Telegraf is a modular, cross-platform telemetry pipeline designed to collect, process, and route metrics from diverse infrastructure, applications, and hardware. It functions as a server-side middleware that normalizes heterogeneous data into a unified format, enabling consistent monitoring across complex environments. By utilizing a plugin-driven architecture, the agent manages the entire lifecycle of telemetry data from initial ingestion to final transmission. The project distinguishes itself through a declarative, configuration-driven execution model that allows users to define complex dat
Telegraf is a server-side telemetry and data pipeline agent written in Go, not a JavaScript library for CSV parsing and manipulation.