OLD | NEW |
| (Empty) |
1 # Vulcanizing Material Design downloads | |
2 | |
3 `vulcanize` is an npm module used to combine resources. In order to make the | |
4 Material Design downloads page sufficiently fast, we run vulcanize on the source | |
5 files to combine them and reduce blocking load/parse time. | |
6 | |
7 ## Required software | |
8 | |
9 Vulcanization currently requires: | |
10 | |
11 - node.js: >= v4.4.2 (can be found with `node --version`) | |
12 - npm: >= 1.3.10 (can be found with `npm --version`) | |
13 - vulcanize: 1.14.8 (can be found with `vulcanize --version`) | |
14 - crisper: 2.0.1 (can be found with `npm list -g crisper`) | |
15 | |
16 ## Installing required software | |
17 | |
18 For instructions on installing node and npm, see | |
19 [here](https://docs.npmjs.com/getting-started/installing-node). | |
20 | |
21 We recommend telling npm where to store downloaded modules: | |
22 | |
23 ```bash | |
24 $ npm config set -g prefix "$HOME/node_modules" | |
25 ``` | |
26 | |
27 Then install `crisper` and `vulcanize` like this: | |
28 | |
29 ```bash | |
30 $ npm install -g crisper vulcanize | |
31 ``` | |
32 | |
33 Ultimately, all that is required to run this script is that `crisper` and | |
34 `vulcanize` are on your `$PATH`. | |
35 | |
36 ## Combining resources with vulcanize | |
37 | |
38 To combine all the CSS/HTML/JS for the downloads page to make it production | |
39 fast, you can run the commands: | |
40 | |
41 ```bash | |
42 $ chrome/browser/resources/md_downloads/vulcanize.py # from src/ | |
43 ``` | |
44 | |
45 This should overwrite the following files: | |
46 | |
47 - chrome/browser/resources/md_downloads/ | |
48 - vulcanized.html (all <link rel=import> and stylesheets inlined) | |
49 - crisper.js (all JavaScript, extracted from vulcanized.html) | |
50 | |
51 ## Testing downloads without vulcanizing | |
52 | |
53 Build with "use_vulcanize=0" in your GYP_DEFINES to build downloads without | |
54 vulcanizing. | |
OLD | NEW |