@@ -52,6 +52,10 @@ a#dev-deploy
5252
5353 The simplest way to deploy the app is to publish it to a web server
5454 directly out of the development environment.
55+
56+ It's not optimized and it won't be very fast for users.
57+ But for some situations - like demos - all you need is to put your project online.
58+
5559 It's already running locally. You're just copying it, almost _as is_,
5660 to a non-local server that others can reach.
5761
@@ -70,14 +74,19 @@ a#dev-deploy
7074
7175 1. Enable production mode as [described below](#enableprodmode) (optional).
7276
73- That's all it takes to publish your app!
77+ That's the simplest deployment you can do.
78+ It's not optimized, but it's online.
79+
7480
7581a#node-modules
7682:marked
7783 ### Load npm packages from the web (SystemJS)
7884
79- The `node_modules` folder of _npm packages_ is huge and slow to upload to the server.
80- It's typically 20,500+ files and 180+ MB.
85+ The `node_modules` folder of _npm packages_ contains much more code
86+ than what is needed to actually run your app in the browser.
87+ More code mean longer upload and download times.
88+
89+ `node_modules` for the Quickstart is typically 20,500+ files and 180+ MB.
8190 The application itself requires a tiny fraction of that to run.
8291
8392 Load the _npm packages_ from the web instead.
@@ -194,6 +203,11 @@ a#optimize
194203 Each tool does something different.
195204 They work best in combination and are mutually reinforcing.
196205
206+ All of these work over your original source code, so don't forget to optimize that as well!
207+ Don't use more libraries than you need to.
208+ For libraries that allow you to import only parts of it, do so.
209+ A good example is RxJs, where you can import operators individually instead of the whole library.
210+
197211 You can use any build system you like.
198212 Whatever system you choose, be sure to automate it so that
199213 building for production is a single step.
@@ -259,6 +273,9 @@ a#measure
259273 <a href="https://developers.google.com/web/tools/chrome-devtools/network-performance/understanding-resource-timing" target="_blank" title="Chrome DevTools Network Performance">
260274 Chrome DevTools Network Performance page</a> is a good place to start learning about measuring performance.
261275
276+ Another good performance test is [WebPageTest](https://www.webpagetest.org/),
277+ which you can also use it to make sure your deployment was successful
278+
262279a#angular-configuration
263280.l-main-section
264281:marked
0 commit comments