A parser and formatter for delimiter-separated values like CSV and TSV, based on RFC 4180.
d3-dsv is a JavaScript library for parsing and formatting delimiter-separated values (DSV), such as CSV and TSV files. It converts between DSV text and JavaScript objects, providing a standards-based solution for handling tabular data commonly used in spreadsheets and data exchange. The library implements RFC 4180 to ensure reliable and consistent processing of CSV data.
JavaScript developers and data engineers who need to process CSV or TSV data in web applications, Node.js scripts, or data visualization projects.
Developers choose d3-dsv for its strict adherence to RFC 4180, ensuring compatibility with standard CSV formats, and its integration with the D3 ecosystem for seamless data manipulation in visualization workflows.
A parser and formatter for delimiter-separated values, such as CSV and TSV.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements the official CSV standard for reliable parsing and formatting, ensuring compatibility with web standards and spreadsheet tools as highlighted in the README.
Converts between DSV strings and JavaScript objects with minimal overhead, making it suitable for performance-critical applications in both Node.js and browsers.
Includes utilities for parsing data incrementally in streams, which is essential for handling large datasets without memory issues, as mentioned in the key features.
Handles CSV, TSV, and custom delimiters, providing versatility for various tabular data formats used in data exchange and analysis.
Focuses solely on parsing and formatting; it lacks features for data transformation, cleaning, or analysis, requiring integration with additional libraries for comprehensive data workflows.
Prioritizes correctness per RFC 4180, but it may not provide detailed error messages or robust recovery options for malformed data compared to libraries like PapaParse.
While it integrates seamlessly with D3 for visualization, it can be overkill or less intuitive for projects not using the D3 stack, adding unnecessary complexity.