Fast and powerful CSV (delimited text) parser that gracefully handles large files and malformed input
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Matthew Holt 159041331e New Papa.DefaultDelimiter property 11 years ago
player Error callback invoked on error during file read 11 years ago
tests Preview count now adds 1 if using header row (fixes #77) 11 years ago
.gitignore Version 3 now working; added player and tests 11 years ago
LICENSE Version 3 now working; added player and tests 11 years ago
README.md Including link to Baby Parse for Node.js people 11 years ago
bower.json Let's stamp version 3.0 on it and see what happens 11 years ago
papaparse.js New Papa.DefaultDelimiter property 11 years ago
papaparse.min.js Minified the latest 11 years ago
parse.jquery.json Fix for special case of quotes around delimiter in quoted field (fixes #67) 11 years ago

README.md

Parse CSV with Javascript

mholt on Gittip

Papa Parse (formerly the jQuery Parse Plugin) is a robust and powerful CSV (character-separated values) parser with these features:

  • Easy to use
  • Parse CSV files directly (local or over the network)
  • Stream large files (even via HTTP)
  • Reverse parsing (converts JSON to CSV)
  • Auto-detect the delimiter
  • Worker threads to keep your web page reactive
  • Header row support
  • Can convert numbers and booleans to their types
  • Graceful and robust error handling
  • Minor jQuery integration to get files from <input type="file"> elements

All are optional (except for being easy to use).

Homepage & Demo

Papa Parse for Node

Rich Harris forked this project to make Baby Parse which runs in Node.js environments.

$ npm install babyparse

Baby Parse on npm registry

Use it just like Papa Parse. However:

  • Files are not supported; strings only
  • Some config options are unavailable:
    • worker
    • download
    • encoding
    • chunk

Otherwise, Baby Parse has nearly all the same functionality as Papa Parse, including the unparse() function.

Get Started

Use papaparse.min.js for production.

For usage instructions, see the homepage and, for more detail, the documentation.

Tests

Papa Parse is under test. Download this repository and open tests/tests.html in your browser to run them.

Contributing

To discuss a new feature or ask a question, open an issue. To fix a bug, submit a pull request to be credited with the contributors! Remember, a pull request, with test, is best.You may also discuss on Twitter with #PapaParse or directly to me, @mholt6.

Origins

Papa Parse is the result of a successful experiment by SmartyStreets which matured into an independent, fully-featured Javascript library.