Improving load times
Production SPAs frequently contain upward of 1 MB of JavaScript, which takes time to download and parse, especially for mobile browsers. For internal applications, this might not be a big deal, but for SPAs deployed to the public Internet, speed is important. Users are impatient and will abandon a slow-loading page. Faster websites see increased repeat traffic, higher search engine rankings and higher conversion rates. In the next sections, we'll cover techniques that will reduce the download size of our SPA and improve its load time.
ClojureScript modules
ClojureScript modules are a Google Closure Compiler option for breaking a ClojureScript application into multiple .js
files. The key insight to modules is that the entirety of your ClojureScript code is not typically required to render every page. For example, many applications have an "inner" and "outer" split, where "outer" consists of things such as marketing and pricing pages, while "inner" consists of the actual...