Skip to content

Commit f2fc2bb

Browse files
committed
Updated README.md
1 parent f78ddd0 commit f2fc2bb

File tree

1 file changed

+27
-5
lines changed

1 file changed

+27
-5
lines changed

README.md

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# excel-rs
22

3-
A set of Rust and Python utilities to efficiently convert CSVs to Excel XLSX files.
3+
An *extremely* fast set of Rust and Python utilities to efficiently convert CSVs to Excel XLSX files.
44

55
This library is available as a CLI tool and Python PIP package.
66

7-
This library was created with the goal of being simple, lightweight, and *extremely* fast. As such, many features such as Excel formatting is not currently supported. This library gives you the quickest possible way to convert a `.csv` file to `.xlsx`.
7+
This library was created with the goal of being simple, lightweight, and *extremely* performant. As such, many features such as Excel formatting is not currently supported. This library gives you the quickest possible way to convert a `.csv` file to `.xlsx`.
8+
9+
The Python utilities also gives you the quickest possible way to export a Pandas DataFrame, Numpy 2D array or Postgres database as a `.xlsx` file.
810

911
## Python
1012

@@ -67,15 +69,22 @@ with open('report.xlsx', 'wb') as f:
6769
```
6870

6971
## Command Line Tool
70-
To install, download the latest release of `cli-excel-rs` for your platform from Release [here](https://github.com/carlvoller/excel-rs/releases?q=cli-excel-rs&expanded=true).
72+
To install, download the latest release of `cli-excel-rs` for your platform from Github Releases [here](https://github.com/carlvoller/excel-rs/releases?q=cli-excel-rs&expanded=true).
7173
```bash
7274
$ wget https://github.com/carlvoller/excel-rs/releases/download/cli-0.2.0/excel-rs-linux-aarch64.zip
7375
$ unzip excel-rs-linux-aarch64.zip
7476
$ chmod +x ./cli-excel-rs
7577
```
7678
Then simply run the binary:
7779
```bash
78-
./cli-excel-rs csv --in my_csv.csv --out my_excel.xlsx
80+
$ ./cli-excel-rs csv --in my_csv.csv --out my_excel.xlsx
81+
```
82+
83+
If you would like the build the binary yourself, you can do so using these commands:
84+
```bash
85+
$ git clone https://github.com/carlvoller/excel-rs
86+
$ cargo build --release
87+
$ ./target/release/cli-excel-rs csv --in my_csv.csv --out my_excel.xlsx
7988
```
8089

8190
## Rust
@@ -93,7 +102,7 @@ Tests were conducted on an Macbook Pro M1 Max with 64GB of RAM
93102
#### py-excel-rs (2.89s)
94103
```
95104
$ time python test-py-excel-rs.py
96-
python3 test-py-excel-rs.py 2.00s user 0.18s system 99% cpu 2.186 total
105+
python3 test-py-excel-rs.py 2.00s user 0.18s system 99% cpu 2.892 total
97106
```
98107

99108
#### openpyxl (97.38s)
@@ -126,6 +135,19 @@ $ time python test-pyexcelerate.py
126135
python3 test-pyexcelerate.py 35.27s user 0.33s system 99% cpu 35.821 total
127136
```
128137

138+
### Command Line Tools
139+
140+
#### cli-excel-rs (2.756s)
141+
```bash
142+
$ time ./cli-excel-rs csv --in organizations-1000000.csv --out results.xlsx
143+
./cli-excel-rs csv --in organizations-1000000.csv --out 2.69s user 0.07s system 99% cpu 2.756 total
144+
```
145+
146+
#### [csv2xlsx](https://github.com/mentax/csv2xlsx?tab=readme-ov-file) (33.74s)
147+
```bash
148+
$ time ./csv2xlsx --output results.xlsx organizations-1000000.csv
149+
./csv2xlsx --output results.xlsx organizations-1000000.csv 57.63s user 1.62s system 175% cpu 33.740 total
150+
```
129151

130152
### Rust
131153

0 commit comments

Comments
 (0)