You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+14-8Lines changed: 14 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,7 +24,7 @@ This project was originally created by Stephen Liberty and `excel-builder-vanill
24
24
25
25
### Comparison to other similar libraries
26
26
27
-
Excel-builder-vanilla is at the minimum 7-13x times smaller than the most popular libraries (we used `Bundlephobia` to compare), excel-builder-vanilla is 19Kb gzip while [XLSX](https://bundlephobia.com/package/xlsx) is 136Kb and [ExcelJS](https://bundlephobia.com/package/exceljs) is 251Kb gzip. The reason as to why it's much smaller is very simple and relates to these 2 major differences:
27
+
Excel-builder-vanilla is at the minimum 7-13x times smaller than the most popular libraries (we used `Bundlephobia` to compare), excel-builder-vanilla is 19Kb gzip while [XLSX](https://bundlephobia.com/package/xlsx) is 136Kb and [ExcelJS](https://bundlephobia.com/package/exceljs) is 251Kb gzip. The reason as to why it's much smaller is very simple and relates to these 2 major differences:
28
28
- excel-builder-vanilla is ESM-Only (tree shakable) and all other libraries are still just offering CJS (CommonJS) which increases their download/install size (not tree shakable)
29
29
- excel-builder-vanilla is only offering Excel export (writer) but without any reading capabilities making the project very lightweight
30
30
@@ -43,12 +43,7 @@ You can also take a look at the "[Used by](#used-by)" section below to see real
43
43
npm install excel-builder-vanilla
44
44
```
45
45
46
-
The project offers 2 different build types, choose the best one depending on your use case
47
-
1.**ESM**: to `import from` (_**preferred**_)
48
-
2.**IIFE**: standalone script which provides `ExcelBuilder` on the `window` object
49
-
50
-
> [!NOTE]
51
-
> ESM import is the preferred approach and IIFE might actually be removed in the future to lower download size even further.
46
+
The project is now only offered as an ESM Only build
52
47
53
48
```ts
54
49
// ESM (preferred) - npm install
@@ -57,7 +52,7 @@ import { createWorksheet } from 'excel-builder-vanilla';
const worksheet =ExcelBuilder.createWorksheet();// or window.ExcelBuilder.createWorksheet();
55
+
const worksheet =ExcelBuilder.createWorksheet();
61
56
</script>
62
57
```
63
58
@@ -110,6 +105,17 @@ The project now has only 1 small dependency which is [fflate](https://github.com
110
105
111
106
This modernization provides a huge decrease in the final build size, with only 1 dependency, and also offers better performance 🚀
112
107
108
+
## Major Changes
109
+
110
+
### version 3.0
111
+
- initial release (forked from original `excel-builder` library)
112
+
113
+
### version 4.0
114
+
- build as ESM-Only and drop CJS (CommonJS) build (aka `require()`)
115
+
116
+
### version 5.0
117
+
- drop the legacy IIFE build and the use of `window` object (typically used when loading as the legacy `<script>`).
118
+
113
119
### Used by
114
120
115
121
This fork was created mostly to support Tree Shaking (ESM), provide TS Types and finally to update all project dependencies. It is used by a few other Open Source libraries that I also maintain and require Excel export:
0 commit comments