Build - Slenderware/slenderpm GitHub Wiki

Build

Intro

Grunt is used build the the site. This is done by utilizing a set of development tools that allows for automatic compression. These tools contribute to do the following in the build process:

  • Javascript minification, comment removal and compression
  • CSS minifaction, comment removal and compression
  • Image compression
  • Html compression
  • Includes installed dependencies in html pages
  • Concatenates scripts and style-sheets
  • Prefixes styles and scripts for caching reasons

The list of utilities are as follows:

bower: ^1.3.12

grunt: ^0.4.5

grunt-autoprefixer: ^1.0.1

grunt-concurrent: ^1.0.0

grunt-contrib-clean: ^0.6.0

grunt-contrib-concat: ^0.5.0

grunt-contrib-connect: ^0.8.0

grunt-contrib-copy: ^0.7.0

grunt-contrib-cssmin: ^0.10.0

grunt-contrib-htmlmin: ^0.3.0

grunt-contrib-imagemin: ^0.8.1

grunt-contrib-jshint: ^0.10.0

grunt-contrib-uglify: ^0.6.0

grunt-contrib-watch: ^0.6.1

grunt-filerev: ^2.1.0

grunt-google-cdn: ^0.4.3

grunt-html2js: ^0.2.9

grunt-karma: ^0.9.0

grunt-newer: ^0.7.0

grunt-ngmin: ^0.0.3

grunt-svgmin: ^1.0.0

grunt-usemin: ^2.4.0

grunt-wiredep: ^1.9.0

jshint-stylish: ^1.0.0

karma-jasmine: ~0.1.5

karma-phantomjs-launcher: ^0.1.4

load-grunt-tasks: ^0.6.0

time-grunt: ^1.0.0

Directory

The distributed files are located in the dist folder in the root of the project. These files are all compressed and is the product of all the above components working together. The currently has a low size of 3.30MB and is structured as follows:

dist

---fonts

---images

---modules

------module_name

---------views

---------res

---scripts

---styles

---index.html