Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Sheetjs | 33,614 | 4,379 | 3,816 | 2 months ago | 170 | March 24, 2022 | 129 | apache-2.0 | JavaScript | |
📗 SheetJS Spreadsheet Data Toolkit -- New home https://git.sheetjs.com/SheetJS/sheetjs | ||||||||||
Tabula | 6,191 | 5 months ago | 542 | mit | CSS | |||||
Tabula is a tool for liberating data tables trapped inside PDF files | ||||||||||
Tablewriter | 3,959 | 1,645 | 6,221 | 8 days ago | 10 | March 04, 2021 | 71 | mit | Go | |
ASCII table in golang | ||||||||||
Sqlite Web | 1,963 | 5 | 3 | 3 days ago | 25 | August 09, 2023 | mit | Python | ||
Web-based SQLite database browser written in Python | ||||||||||
Csvtotable | 870 | 3 | 3 years ago | 11 | July 20, 2017 | 13 | mit | Python | ||
Simple command-line utility to convert CSV files to searchable and sortable HTML table. | ||||||||||
Rows | 845 | 26 | 3 | 4 months ago | 10 | February 14, 2019 | 170 | lgpl-3.0 | Python | |
A common, beautiful interface to tabular data, no matter the format | ||||||||||
Prettytable Rs | 811 | 258 | 266 | 24 days ago | 19 | September 27, 2018 | 34 | bsd-3-clause | Rust | |
A rust library to print aligned and formatted tables | ||||||||||
Mlsql | 804 | 3 years ago | Python | |||||||
inferring sql queries from plain-text questions about tables | ||||||||||
Csv To Html Table | 757 | 7 months ago | 1 | March 27, 2021 | 19 | mit | CSS | |||
:arrow_down_small: Display any CSV (comma separated values) file as a searchable, filterable, pretty HTML table | ||||||||||
Csvs To Sqlite | 752 | 4 | 1 | 6 months ago | 16 | November 18, 2021 | 45 | apache-2.0 | Python | |
Convert CSV files into a SQLite database |
A browser extension with 3.5k+ users.
It transforms raw csv
data into a simple html
table, and shows it online in the same tab.
Available free for Chrome and Firefox.
When quickly looking through csv data files online, you either have to:
CSV Reader allows you to look at the data formatted as a table, so you can make decisions faster.
CSV Reader detects if the current tab is a .csv
page (correctly most of the time).
The user can select some settings in a popup to modify the output.
NEW: The extension now stores user settings per url for the next time you browse the same file.
NEW: The extension now stops csv
files from downloading (it modifies the response headers) so you can parse them in-browser. If you want to download the file just ctrl+s
(cmd+s
), even in the parsed csv
screen.
It offers different options (see images and examples below):
csv
data into a table, nicely formatted so it's easy to scan.csv
data but rainbow-color it to make it easier to read (inspired by the Rainbow CSV VS Code extension).It allows the user to input some settings:
Feature | Default | Type | Result |
---|---|---|---|
Separator | , |
String | New column when this value is found |
Title row | false |
Boolean | Use the first line as the table header |
Skip at the top | 0 |
Number | Number of text lines to leave untouched at the top |
Links in text | false |
Boolean | Look for links in data and make them clickable |
.csv
data page.Visit a .csv
data file online. You can try this csv sample dataset.
Click on the CSV Reader extension icon.
In the popup, input the config options: separator, title row, etc. (In the example dataset, |
(pipe) as the separator, and check the title line option).
Click "Convert":
To go back to the raw data, click the "Reset" button on the extension popup:
If this extension was useful to you in any way, please consider leaving a 5-star review.
It will take you less than a minute, and will greatly help reach new audiences.
Thank you very much!
Suggestions and PRs are welcome, of course. This is (roughly) the dev process:
extension/content_scripts/csv_reader.js
contains all the parse and output logic. The browser.tabs
queries use Promises, supported in Firefox but not in Chrome, so the extension loads a polyfill for this.
extension/popup/popup.js
manages the user input logic, messaging to the main content script, and custom CSS inserts.
To load the unpacked, test extension:
extension/
folder. Make sure the polyfill is in extension/polyfills/
.To build and pack the extension, I use web-ext
too. It builds the extension
folder and creates a .zip
file inside extension/web-ext-artifacts
.
That's it, there is no further compiling or building process, for now at least.
Some features I'd like to work on (help appreciated):
.csv
files from downloading, and instead open them in browser so thay can be converted.CSV Reader uses svg
icons from Tabler Icons, thanks!