Various performance improvements
- Reduce static image size - closes #100 (closed)
- Tweak nginx gzip configuration
- Setup nginx cache configration
- Reduce app bundle - closes #93 (closed)
- Remove most of lodash (around 400KB reduction) - closes #83 (closed)
- Fix wrong import of fontawesome icons (around 1MB reduction) -
ArchiveWidget
component was importing the whole icon pack then using stringiconName
to choose which one to use, resulting on every single available icon being packed into the bundle. It is better to import only the icons we actually need to benefit from tree shaking and make it much lighter. - Use route-based code splitting (around 500KB reduction when loading home page)
--> Result gzipped bundle for home page is 140kb.
--> App loading time:
- near instantaneous when cache enabled
- when cache disabled usually takes 2-3 seconds, sometimes up to 10-15s. This should be much faster - see #110 (closed) : same app takes 700ms to load everything when deployed on netlify.
Edited by Mael Gaonach