これは Matthieu Lux と Mehdy Dara によるゲスト投稿です。
はじめに 
私たち (@Swiip と @zckrs) が Yeoman ジェネレーターの開発を開始して1年以上が経ちました。本日、最初のメジャーで安定版となるバージョンをリリースすることを発表します:generator-gulp-angular 1.0.0.
当初、私たちは generator-gulp-webapp と generator-angular をうまく統合することを目指していました。Angular で開発していましたが、Grunt の冗長さにはうんざりしていたからです。その後、プロジェクトの人気度が上昇し、野心も大きくなりました。
開発理念
私たちは Yeoman のすべての原則に従い、独自の要素も追加しました。
- フォルダ構造とコードスタイルに関する最善の推奨事項に従った、よく書かれたシードプロジェクトを提供します。
- 最新のテクノロジーを使用して、最適なツールと最適化で開始できるようにするオプションを提供します。
- プロジェクトのさまざまな部分への自動インジェクションを使用します:index.html のベンダーとソースの両方のスクリプトタグ、スタイルファイル、ベンダー、css、またはプリプロセス済みファイル。
- ジェネレーターと生成されたコードの両方について、可能な限り完璧なテストカバレッジを提供します。
サポートされるテクノロジー
これは安定版であると冗談で言っているわけではありません。CoffeeScript から TypeScript、Sass から Stylus まで、多くのテクノロジーと言語を統合しました。組み合わせの数は数百万を超えています!完璧に構成されたシードプロジェクトを提供するために、12個のマイナーバージョンと2つのリリース候補について、テスト、ドキュメント作成、問題修正を行いました。選択したオプションに関係なく、完璧に構成されたシードプロジェクトを提供できます。
提供される最適化
いくつかの Gulp プラグインを使用して、Web アプリケーションの多くの最適化を統合しました。
- browserSync:ライブリロードとデバイス同期機能を備えたフル機能の開発用Webサーバー
- ngAnnotate:単純なインジェクションを完全な構文に変換して、縮小処理に対応します
- angular-templatecache:すべてのHTMLパーシャルがJSに変換され、アプリケーションにバンドルされます
- ESLint:JavaScript 用のプラグイン可能なリンティングユーティリティ
- watch:ソースファイルを監視し、自動的に再コンパイルします
- useref:HTMLファイルのコメントでファイルの構成を許可します
- uglify:すべてのJavaScriptを最適化します
- clean-css:すべてのCSSを最適化します
- rev:ブラウザのキャッシュの問題を防ぐために、ファイル名にハッシュを追加します
- karma:すぐに使えるKarmaによる単体テスト設定
- protractor:すぐに使えるProtractorによるE2Eテスト設定
2.0.0 開発中…
しかし、バージョン1.0.0は道の終わりではありません。v1ブランチを維持しながら、FountainJSという新しいGitHub組織を開始し、未来的なv2バージョンをターゲットにしています。ビルドツールの状況は1年で大きく進化したため、コードベースのリブートとなります。主なセールスポイントは、Yeomanジェネレーターのコンポジションサポートを使用すること、Gulp 4にアップグレードすること、ES6で記述することです。最後に、オプションの面で新たな地平を開拓したいと考えています。依存関係管理はもちろんのこと、Webフレームワーク(Reactについて話した人もいますか?)やバックエンドも検討しています。
generator-gulp-angular v1.0.0 リリースを試してみてください!新しい FountainJS プロジェクトに関するフィードバック、問題、または貢献は常に歓迎します。