gu-gridh / queerlit-gui

Web frontend for Queerlit search
MIT License
0 stars 0 forks source link

Replace Yarn with Bun #166

Closed arildm closed 7 months ago

arildm commented 8 months ago

I've been following the guide at https://bun.sh/guides/ecosystem/vite

Noticing that with bunx --bun some bundle sizes are larger:

bunx vite build
vite v4.5.0 building for production...
✓ 588 modules transformed.
dist/assets/dropdown-998d3653.svg                                          0.29 kB │ gzip:   0.20 kB
dist/index.html                                                            0.49 kB │ gzip:   0.30 kB
dist/assets/qlogo-a64ca111.svg                                             5.54 kB │ gzip:   1.79 kB
dist/assets/barlow-condensed-vietnamese-300-normal-d07dd5e0.woff2          6.69 kB
dist/assets/barlow-condensed-latin-ext-300-normal-dcda2a31.woff2          12.85 kB
dist/assets/barlow-condensed-latin-300-normal-aa189520.woff2              20.18 kB
dist/assets/gu-7de70935.svg                                               31.05 kB │ gzip:  11.39 kB
dist/assets/barlow-condensed-all-300-normal-304a2003.woff                 38.59 kB
dist/assets/Term-0326ffdb.css                                              0.18 kB │ gzip:   0.13 kB
dist/assets/index-2fd36260.css                                            27.12 kB │ gzip:   5.96 kB
dist/assets/Work-ecd710c1.js                                               0.44 kB │ gzip:   0.31 kB
dist/assets/LocalWork-31b89d07.js                                          0.46 kB │ gzip:   0.34 kB
dist/assets/Thesaurus-9d3394f8.js                                          2.93 kB │ gzip:   1.41 kB
dist/assets/WorkDetails.vue_vue_type_script_setup_true_lang-98c02e8a.js    3.71 kB │ gzip:   1.40 kB
dist/assets/Term-7c72b07f.js                                               5.39 kB │ gzip:   2.21 kB
dist/assets/index-264b17e6.js                                            487.26 kB │ gzip: 168.22 kB
✓ built in 4.64s
bunx --bun vite build
vite v4.5.0 building for production...
✓ 588 modules transformed.
dist/assets/dropdown-998d3653.svg                                    0.29 kB │ gzip:   0.20 kB
dist/index.html                                                      0.49 kB │ gzip:   0.30 kB
dist/assets/qlogo-a64ca111.svg                                       5.54 kB │ gzip:   1.79 kB
dist/assets/barlow-condensed-vietnamese-300-normal-d07dd5e0.woff2    6.69 kB
dist/assets/barlow-condensed-latin-ext-300-normal-dcda2a31.woff2    12.85 kB
dist/assets/barlow-condensed-latin-300-normal-aa189520.woff2        20.18 kB
dist/assets/gu-7de70935.svg                                         31.05 kB │ gzip:  11.39 kB
dist/assets/barlow-condensed-all-300-normal-304a2003.woff           38.59 kB
dist/assets/Term-be1a2182.css                                        0.18 kB │ gzip:   0.13 kB
dist/assets/index-c247eeb0.css                                      27.12 kB │ gzip:   5.96 kB
dist/assets/Work-2f3b5ccb.js                                         0.49 kB │ gzip:   0.35 kB
dist/assets/LocalWork-a6ec0c38.js                                    0.53 kB │ gzip:   0.39 kB
dist/assets/Thesaurus-90022a22.js                                    3.20 kB │ gzip:   1.53 kB
dist/assets/WorkDetails-d2f0b9a2.js                                  4.01 kB │ gzip:   1.54 kB
dist/assets/Term-4addfd66.js                                         5.58 kB │ gzip:   2.29 kB
dist/assets/index-da2b10d1.js                                      551.78 kB │ gzip: 191.18 kB

(!) Some chunks are larger than 500 kBs after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
✓ built in 5.41s
arildm commented 7 months ago

The bundle size problem is confirmed by this blog post: Why use Vite when Bun is also a bundler? - Vite vs. Bun

Bun is awesome as a Node.js replacement for the server (as a JS runtime).

Vite is great for unbundled fast development, and for flexible and optimal bundling of the JS code in production which is sent to clients over the network.