Some time ago I started working on some functionality to make builds more inspectable. I was particulary interested in finding out what exactly ended up in my build after optimizations and how many bytes each part contributed.
The functionality has been there for a while now but not exactly easy to use and it was not documented at all. As of
firstname.lastname@example.org it is now much easier to quickly generate a report. The report itself generates a standalone HTML file that can be stored separately and requires not running server or external files. It is very useful to do before/after comparisons when trying to optimize certain JS includes.
The command to generate such a report for the
:app build would be:
$ npx shadow-cljs run shadow.cljs.build-report app output.html
I plan on extending the report with some additional information over time since I also want to be able to quickly tell why something ended up in a build, ie. who included it.