Built app is too big
Development build of the initial app goes up to 14.5 MB, and a production build (optimized and minified) is 5.2 MB.
We need to figure out how we can slim this down to a reasonable size.
Below is an output of the sizes of individual modules in the intial app, obtained by: NODE_ENV=dev webpack --json --config webpack/webpack.dev.config.js | webpack-bundle-size-analyzer
Bundle: app
lodash: 754.55 KB (14.6%)
lens: 744.54 KB (14.4%)
lodash: 63.29 KB (8.50%)
<self>: 681.26 KB (91.5%)
substance: 624.12 KB (12.1%)
react-dom: 533.24 KB (10.3%)
joi-browser: 352.63 KB (6.82%)
react-bootstrap: 284.58 KB (5.50%)
jquery: 241.79 KB (4.68%)
pubsweet-component-blog: 205.43 KB (3.97%)
react: 116.01 KB (2.24%)
react-router: 103.24 KB (2.00%)
react-select: 85.75 KB (1.66%)
pubsweet-component-science-writer: 73.92 KB (1.43%)
pubsweet-component-science-reader: 72.34 KB (1.40%)
pubsweet-frontend: 68.83 KB (1.33%)
react-overlays: 67.29 KB (1.30%)
html-entities: 57.38 KB (1.11%)
node-libs-browser: 52.65 KB (1.02%)
buffer: 47.47 KB (90.2%)
process: 5.17 KB (9.83%)
<self>: 0 B (0.00%)
history: 46.16 KB (0.893%)
core-js: 44.67 KB (0.864%)
react-json-tree: 38.9 KB (0.752%)
redux-devtools-log-monitor: 35.21 KB (0.681%)
lodash.curry: 35.03 KB (0.677%)
pubsweet-component-posts-manager: 31.15 KB (0.602%)
fbjs: 30.45 KB (0.589%)
redux-devtools-instrument: 23.34 KB (0.451%)
base16: 22.03 KB (0.426%)
react-proxy: 21.75 KB (0.421%)
pubsweet-component-teams-manager: 20.39 KB (0.394%)
redux: 20.35 KB (0.393%)
react-redux: 19.37 KB (0.374%)
redbox-react: 17.95 KB (0.347%)
pubsweet-component-login: 16.69 KB (0.323%)
dom-helpers: 15.56 KB (0.301%)
react-dock: 14.92 KB (0.288%)
pubsweet-component-signup: 12.84 KB (0.248%)
whatwg-fetch: 12.24 KB (0.237%)
react-hot-loader: 12.17 KB (0.235%)
redux-logger: 11.83 KB (0.229%)
lodash.flow: 11.37 KB (0.220%)
deep-diff: 11.21 KB (0.217%)
react-router-redux: 10.93 KB (0.211%)
redux-devtools-dock-monitor: 10.51 KB (0.203%)
webpack-hot-middleware: 10.44 KB (0.202%)
uncontrollable: 9.57 KB (0.185%)
babel-runtime: 9.05 KB (0.175%)
pubsweet-component-users-manager: 9.04 KB (0.175%)
error-stack-parser: 8.48 KB (0.164%)
react-router-bootstrap: 8.17 KB (0.158%)
redux-devtools: 7.04 KB (0.136%)
style-loader: 6.99 KB (0.135%)
lodash.debounce: 6.89 KB (0.133%)
react-prop-types: 6.04 KB (0.117%)
path-browserify: 6.04 KB (0.117%)
pubsweet-component-form-group: 5.79 KB (0.112%)
lodash-es: 5.74 KB (0.111%)
react-base16-styling: 5.36 KB (0.104%)
react-input-autosize: 4.54 KB (0.0878%)
ansi-html: 4.16 KB (0.0805%)
query-string: 4.14 KB (0.0801%)
deep-equal: 3.8 KB (0.0735%)
lodash._getnative: 3.78 KB (0.0731%)
base64-js: 3.49 KB (0.0675%)
stackframe: 3.4 KB (0.0658%)
pubsweet-component-navigation: 3.31 KB (0.0641%)
<self>: 50.72 KB (0.981%)