Skip to content

Commit 6e6f0e7

Browse files
committed
update readme
1 parent 36e03ae commit 6e6f0e7

1 file changed

Lines changed: 22 additions & 131 deletions

File tree

readme.md

Lines changed: 22 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,22 @@
11
[![Build Status](https://travis-ci.org/Keyang/node-csvtojson.svg?branch=master)](https://travis-ci.org/Keyang/node-csvtojson)
22
[![Coverage Status](https://coveralls.io/repos/github/Keyang/node-csvtojson/badge.svg?branch=master)](https://coveralls.io/github/Keyang/node-csvtojson?branch=master)
3+
[![OpenCollective](https://opencollective.com/csvtojson/backers/badge.svg)](#backers)
4+
[![OpenCollective](https://opencollective.com/csvtojson/sponsors/badge.svg)](#sponsors)
35

46
# CSVTOJSON
57

68
`csvtojson` module is a comprehensive nodejs csv parser to convert csv to json or column arrays. It can be used as node.js library / command line tool / or in browser. Below are some features:
79

8-
* Large csv file parsing with low memory (stream support)
9-
* Node.JS / Browser (with WebPack) support
10-
* Easy to use yet abundant API / parameters
11-
* Commandline tool
12-
* Multiple output format -- json / csv / lines
13-
* Error handling
14-
* [Extremely fast](https://github.com/Keyang/csvbench) -- targeting on millions of lines csv data
15-
* node.js 4+ to latest
10+
* Strictly follow CSV definition [RF4180](https://www.loc.gov/preservation/digital/formats/fdd/fdd000323.shtml)
11+
* Work with millions of lines of CSV data
12+
* Provide comprehensive parsing parameters
13+
* Provide out of box CSV parsing tool for Command Line
14+
* Blazing fast -- [Focus on performance](https://github.com/Keyang/csvbench)
15+
* Give flexibility to developer with 'pre-defined' helpers
16+
* Allow async / streaming parsing
17+
* Provide a csv parser for both Node.JS and browsers
18+
* Easy to use API
1619

17-
# Donation
18-
19-
Very much appreciate your donation and support.
20-
21-
[![donate](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=DUBQLRPJADJFQ)
22-
23-
Thank you again.
2420

2521
# csvtojson online
2622

@@ -48,7 +44,6 @@ const csvtojsonV2=require("csvtojson/v2");
4844
* [Quick Start](#quick-start)
4945
* [API](#api)
5046
* [Contribution](#contribution)
51-
* [Change Logs](#change-log)
5247

5348
# Quick Start
5449

@@ -598,8 +593,11 @@ csv({
598593
})
599594
```
600595

596+
# Contribution
597+
598+
Very much appreciate any types of donation and support.
601599

602-
# Contribution
600+
## Code
603601

604602
`csvtojson` follows github convention for contributions. Here are some steps:
605603

@@ -613,124 +611,17 @@ csv({
613611

614612
Thanks all the [contributors](https://github.com/Keyang/node-csvtojson/graphs/contributors)
615613

616-
# Change Log
617-
618-
##
619-
620-
## 1.1.7
621-
622-
* add `colParser` parameter
623-
* fix bug that could cause utf-8 character broken
624-
625-
## 1.1.5
626-
627-
* `ignoreColumns` and `includeColumns` now allow put in header names and indecies.
628-
* only include `child_process` when multi worker is needed.
629-
* allow `fs.createReadStream` options being passed in through `fromFile` function
630-
631-
## 1.1.4
632-
633-
* [Breaking Change!!] default value of `checkType` is now false as it causes problems on some csv docs.
634-
* Added ignoreColumns and includeColumns features. #138
635-
636-
## 1.1.1
637-
638-
* Fix bugs: preProcessLine is not emitted
639-
* Changed array definition in nested json structure to follow [lodash set] (https://lodash.com/docs/4.17.2#set)
640-
* Only use first line of csv body for type inference
641-
* added `done` event
642-
* added `hooks` section
643-
* removed `parserMgr`
644-
645-
646-
## 1.1.0
647-
648-
* Remove support of `new Converter(true)`
649-
* Optimised Performance
650-
* Added new APIs
614+
## Backers
651615

652-
Version 1.1.0 has added new features and optimised lib performance. It also introduced simpler APIs to use. Thus readme is re-written to adapt the preferred new APIs. The lib will support old APIs. To review the old readme please [click here](https://github.com/Keyang/node-csvtojson/blob/master/readme-old.md).
616+
Thank you to all our backers! [[Become a backer](https://opencollective.com/csvtojson#backer)]
653617

654-
* [Performance Optimisation](https://github.com/Keyang/node-csvtojson/blob/master/docs/performance.md#performance-optimisation): V1.1.0 is 30%-50% faster
655-
* Better error tolerance
656-
* Simplified API (see below)
618+
[![OpenCollective](https://opencollective.com/csvtojson/backers.svg?width=890)](https://opencollective.com/csvtojson#backer)
657619

658-
All changes are backward compatible.
620+
## Sponsors
659621

660-
## 1.0.2
661-
* supported ndjson format as per #113 and #87
662-
* issue: #120
622+
Thank you to all our sponsors! (please ask your company to also support this open source project by [becoming a sponsor](https://opencollective.com/csvtojson#sponsor))
663623

664-
## 1.0.0
665-
* Add [Stream Options](#stream-options)
666-
* Change version syntax to follow x.y.z
624+
## Paypal
667625

668-
## 0.5.12
669-
* Added support for scientific notation number support (#100)
670-
* Added "off" option to quote parameter
671-
672-
## 0.5.4
673-
* Added new feature: accept special delimiter "auto" and array
674-
675-
## 0.5.2
676-
677-
* Changed type separator from # to #!
678-
* Fixed bugs
679-
680-
## 0.5.0
681-
682-
* Fixed some bugs
683-
* Performance improvement
684-
* **Implicity type for numbers now use RegExp:/^[-+]?[0-9]*\.?[0-9]+$/. Previously 00131 is a string now will be recognised as number type**
685-
* **If a column has no head, now it will use current column index as column name: 'field*'. previously parser uses a fixed index starting from 1. e.g. csv data: 'aa,bb,cc' with head 'a,b'. previously it will convert to {'a':'aa','b':'bb','field1':'cc'} and now it is {'a':'aa','b':'bb','field3':'cc'}**
686-
687-
## 0.4.7
688-
* ignoreEmpty now ignores empty rows as well
689-
* optimised performance
690-
* added fromFile method
691-
692-
## 0.4.4
693-
* Add error handling for corrupted CSV data
694-
* Exposed "eol" param
695-
696-
## 0.4.3
697-
* Added header configuration
698-
* Refactored worker code
699-
* **Number type field now returns 0 if parseFloat returns NaN with the value of the field. Previously it returns original value in string.**
700-
701-
## 0.4.0
702-
* Added Multi-core CPU support to increase performance
703-
* Added "fork" option to delegate csv converting work to another process.
704-
* Refactoring general flow
705-
706-
## 0.3.21
707-
* Refactored Command Line Tool.
708-
* Added ignoreEmpty parameter.
709-
710-
## 0.3.18
711-
* Fixed double qoute parse as per CSV standard.
712-
713-
## 0.3.14
714-
* Added field type support
715-
* Fixed some minor bugs
716-
717-
## 0.3.8
718-
* Empowered built-in JSON parser.
719-
* Change: Use JSON parser as default parser.
720-
* Added parameter trim in constructor. default: true. trim will trim content spaces.
721-
722-
## 0.3.5
723-
* Added fromString method to support direct string input
724-
725-
## 0.3.4
726-
* Added more parameters to command line tool.
727-
728-
## 0.3.2
729-
* Added quote in parameter to support quoted column content containing delimiters
730-
* Changed row index starting from 0 instead of 1 when populated from record_parsed event
626+
[![donate](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=DUBQLRPJADJFQ)
731627

732-
## 0.3
733-
* Removed all dependencies
734-
* Deprecated applyWebServer
735-
* Added construct parameter for Converter Class
736-
* Converter Class now works as a proper stream object

0 commit comments

Comments
 (0)