Yeomanは、Webアプリケーション向けのオープンソースのプロジェクト自動生成ツール。YeomanはNode.js向けに記述されたコマンドラインインターフェースとして動作し、スターターテンプレートの生成、依存関係の管理、単体テストの実行、ローカル開発サーバーの提供、本番環境へのデプロイに向けたコードの最適化など、複数の機能が1つに統合されている。
Yeomanは、Google I/O 2012で発表された。
概要 Yeomanは、ウェブ開発プロセスの多くの側面を効率化するために、複数のオープンソースツールを組み合わせている。
Ruby on Railsに触発された「ジェネレーター」という概念を用い、Yeomanはまず、ベンダーライブラリを含む基本的なプロジェクト構造を生成する。最も基本的なYeomanジェネレーターは、開発者向けの基本テンプレートとして、HTML5 Boilerplate、Normalize.css、jQuery、およびModernizrを提供している。また、Yeomanは対話形式で動作し、BootstrapやRequireJSなどの追加コンポーネントを組み込むかどうかを開発者に尋ねる。さらに高度なジェネレーターも存在し、例えばAngularJSやBackbone.jsといったJavaScriptライブラリを用いたクライアントサイドModel-View-Controllerフレームワークの雛形を生成するものなどがあります。Yeomanはモジュール式に設計されており、特定の種類のプロジェクト用テンプレートを作成するためのジェネレーターを誰でも設計できるようになっている。これまでに、オープンソースコミュニティによって5,600以上のジェネレーターが作成されている。
Yeomanは、プロジェクトのひな形となるテンプレートを提供するだけでなく、Webアプリケーション開発の中間段階も支援する。YeomanはJSHintを使用してコードの潜在的な問題点をリンティングし、単体テストを実行し、アプリケーション開発用のサーバーを提供する。さらに、Yeomanはスクリプトファイルのミニファイや連結などの最適化機能を備えたビルド自動化プロセスも提供している。これらの機能はすべて、Grunt JavaScriptタスクランナー用に事前に設定されたタスクを使用する。
YeomanはGitHubでコードがホストされているオープンソースプロジェクト。主な貢献者の中には、Addy Osmani、Paul Irish、Eric Bidelmanなど、Google Chrome開発者関係チームのメンバーがいる。
脚注・出典
外部リンク
GruntJS HTML5 Boilerplate Modernizr