HTML5 Boilerplate/Build-script

Last-modified: 2012-03-11 (日) 22:31:30

WHY USE IT? 

ページのロードを高速化して、ユーザーを幸せにするよ

WHAT IT DOES?

  • Javascriptを結合して圧縮(yui compressorを使用する)
  • HTMLインラインで書かれているCSSを@importで置き換える
  • CSSを結合して縮小する
  • JPGとPNGを最適化する(jpegtran & optipng)
  • 無駄なコードを削除してくれる(console.log, profiling,test suite)
  • HTMLの圧縮 (htmlcompressor)
  • キャッシュマニフェストの自動生成
    • htmlタグにリンクを貼ってくれる
    • プロジェクトのconfigファイルでON/OFFができる
  •  ファイル名を変更することで、重いキャッシュを使えるようにあんる
  • .htaccessの更新(重いキャッシュを使えるようになる)
  • HTMLのリンクを新たに圧縮・最適化されたCSS・JSファイルにリンク置き換え
  • 開発バージョンの代わりに再軽量のJQueryを使うようにupdate
  • HTMLから使われていないファイルを削除
  • コード品質ツールをオプションで走らせる

端的に言うと

ページが爆速になる.下の図は、ページのサイズ(いかにも怪しいけどもそういうことらしい)

chart.png
http://html5boilerplate.com/img/chart.pngから抜粋

QUICKSTART GUIDE

*nix系

sudo apt-get install ant-contrib

sudo port install ant-contrib

sudo yum install ant-contrib

etc...

windows系

無視!

USING THE BUILD SCRIPT

  1. プロジェクトコードをダウンロード
  2. ビルドスクリプトの置いてあるディレクトリに移動
  3. ant build
  4. publishディレクトリに最適化されたファイルがあるよ!

オプションなど

ant build # minor html optimizations (extra quotes removed). inline script/style minified (default)
ant buildkit # all html whitespace retained. inline script/style minified
ant basics # same as build minus the basic html minfication
ant minify # same as build plus full html minification
ant text # same as build but without image (png/jpg) optimizing

設定ファイル

  • 基本的なプロジェクト設定は,default.properties
  • build.xmlをいじる必要があるかも
  • いくつかのスタイルシートを作って1つに結合したければ、project.propertiesに書けばやってくれるよ
  • 圧縮したいファイルは、以下の二行を初めと終わりに書いておくと自動的に圧縮してくれるよ。

<!-- scripts concatenated and minified via ant build script-->
スクリプト達

<!-- end scripts-->

  • もし圧縮したくなければ、2つの行の外側にリンクを貼っておこう

HERE IS HOW THE ENVIRONMENTS WORK

  • dev
  • test
  • prod

基本的なお仕事

ビルドスクリプトを使うことになるほぼ大体のプロジェクトは、ビルドスクリプトからファイルを追加・削除・移動が必要になるでしょう

  • もし、簡単なことだったら、build/configのproject.propertiesをいじっておくと幸せかもよ

MOVING AND RENAMING FOLDERS

もし、cssからstylesにCSSディレクトリを変更したければ以下のようにpropertiesを変更:

# Directory Structure

#

# Override any directory paths specific to this project

#

dir.css = styles

アプリケーションコードから、分離したければ、以下のように設定しておくといいよ

# Directory Structure

#

# Override any directory paths specific to this project

#

dir.js = _assets/js

dir.css = _assets/css

dir.images = _assets/images

CONFIGURE DEEP NESTED FILES

SUPPORT FOR MODULES

RUNNIG JSHINT AND JSLINT

オプションとして、JSHintとJSLintを使って、(潰せる)潜在的なバグは潰しておくこともできる

ant build jshint
ant build jslint

  • project.propertiesに書いておけば自動化できる

JSHINT:http://jshint.com/
JSLINT:http://www.jslint.com/lint.html

RUNNING CSSLINT

CSSも、潜在的なバグを潰しておけるスクリプトがあると(バグがあるので要注意)

ant build csslint

ビシバシ使おう

依存関係

MAC

port install jpeg optipng

UBUNTU

apt-get install libjpeg-progs optipng