aboutsummaryrefslogtreecommitdiffstats
path: root/minify/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'minify/README.md')
-rw-r--r--minify/README.md41
1 files changed, 41 insertions, 0 deletions
diff --git a/minify/README.md b/minify/README.md
new file mode 100644
index 0000000..ce548db
--- /dev/null
+++ b/minify/README.md
@@ -0,0 +1,41 @@
+# Understanding and Using Minification
+
+Enyo comes with a minification tool based on NodeJS and UglifyJS.
+
+This tool can be used to compress the framework, other libraries, and applications, and will keep load order intact as well as correct url paths in css.
+
+## Why compress?
+
+Compressing enyo apps greatly reduces load times of appliactions, as well as reducing overall code size.
+
+This way, you can be very verbose in the documentation of your source code, without that impacting the performance of your application in production.
+
+## What is compressed
+
+For enyo, the libraries, and your code: **external assets such as images will not be copied or moved**.
+
+Instead, the CSS url paths are fixed up to reference the new path from the build location.
+
+## How to compress
+
+To compress your application, you must enter the `minify` folder and run one of the scripts.
+- On Windows, just double click on `minify.bat`
+- On Mac and Linux, run `minify.sh`
+
+Both scripts will run the minification tool located in `enyo/tools/minify`, and make a build of enyo, then a build of your app.
+
+Any libraries referenced in your `package.js` manifest will be built into your app's built code.
+
+**NOTE:** The `package.js` file inside the `minify` folder is mandatory, and only references your app's `package.js` to keep paths correct. Do not modify this.
+
+## What comes out?
+
+After running the minify script, a new folder `build` will be located next to your `source` directory.
+
+In it will be 4 files:
+- enyo.css
+- enyo.js
+- app.css
+- app.js
+
+These files will be loaded in the given order by `index.html`.