先日Developers Summitデビューしました。こんにちは、先生です。 前回公開した記事「エンジニアがいい感じにフロントエンド開発を爆速化できる環境構築の手順」の反響が大きかったので、そこで使われているWebPackというModule Bundlerをもう少し深く掘り下げていきたいと思います。 WebPackとは WebPackは静的なファイルの依存関係を解決しつつ結合したり分割したりするツールです。非常に多機能でカスタマイズの幅が広いのが特徴です。 http://webpack.github.io/docs/ 個人的な経緯ですが、require.js -> Browserifyを経てWebPackに落ち着いたところです。 WebPackはnpmを使ってインストールします。 npm install webpack -g ※ npmが使えない方はまずNode.jsをインストールしてく
文書校正ツール textlint の Chrome 拡張を作ったのですが、その開発の過程でハマった問題や対策などを記録として残しておきます。 なお、textlint 拡張のソースコードは GitHub で公開しています。 github.com 1. textlint Chrome 拡張の仕組み textlint とは azu さんが作成している文書校正ツールで、Node のパッケージマネージャである npm を通してインストールできるようになっています。中身は当然 Node の JavaScript 製であり、モジュールとして Node で読み込んで利用する事もできるため、textlint 拡張ではそれを利用しています。 Node のコードを Chrome 拡張として動かすにあたり、Chrome 拡張の JavaScript エンジンはブラウザとしての Chrome のものと同等なため、そ
Reduxの公式ExampleにあるTodo Listを少しづつ書いてみました。 最終的な動作イメージは以下のような感じです。 Github Pagesにもあげていますので、触ってみてください。 基本的なReduxの説明や環境構築などは他のドキュメントに譲るとして、 ここでは各機能ごとに動くものを作りながら、最終的にExampleの形になることを目指します。 Reactがだいたい分かってて(チュートリアルをやったくらい)で、 Reduxを触り始めたくらいの人を対象としています。 Reduxを触り始めて日が浅いので、間違いもあるかと思います。ぜひご指摘ください。 ExampleのTodo Listの機能は次の3つです。 TodoをTodo Listに追加する「Add Todo」 Todoの完了・未完了を切り替える「Toggle Todo」 表示するTodo Listを完了または未完了のTod
ごきげんよう皆様、精神が壊れてしまい休職中の erukiti ですが、第2のドワンゴ Advent Calendar 2015 - Qiita の第20日目を5日ほど遅れてお送りします。遅れてすみません。 erukiti/rize-filer 今回の記事は… さて、Electronの解説記事は割と多いですが、ちゃんと使えるアプリを作るために必要な情報は色々散らばっています。そこで今回はリゼ先輩&シャロちゃんと一緒に一つ一つそれらを見ていきましょう。ごちうさ風味の書き方ですが内容は普通にElectronの記事です。 Electronに興味があるけれどよく知らない方は 第8羽 トランスペアレントプレイング・プレイヤーストーリー (ごちうさ Advent Calendar 2015) - Qiita をまずはお読みください。Electron でちょっとした動画プレイヤーを作ってみるという記事でし
JavaScript界のハリーポッターこと「Browserify」が最近元気ですね。Node.js的な var myModule = require('myModule')式の記述が、ブラウザのスクリプトでも使えるようになって、ついでに1ファイルにまとめるのもやってくれるツールです。ポストRequireJSとして期待されています。 ただ、公式ドキュメントがコマンドラインの説明に重点を置いていて、最初これだけだといまいち分かりにくい...。そこで、実際の開発で使いやすいように、ビルドツール(gulp.js)から実行するための最小構成を作ってみようかと思います。(Gruntでも同様のことは可能です) require!: Bowerも使えます 対象のスクリプトの中身は、例えばこんな感じ。この例では、ModernizrとjQueryと、独自スクリプトを組み込んでいます。外部ファイルを指定するだけで
Bower入門 これから Bower について書いてきます。Bowerの使い方から実際に使う上で考慮することまで含めて書きます。 長くなりそうなので単に使うだけの基礎編とモジュールを作る上で気をつけることをまとめた応用編に分けて書きます。 Bower とは Twitter社が作ったフロントエンド用のパッケージマネージャです。 Java で言う Maven、 Ruby で言う gem、 Perl で言う cpan のようなものです。 Node.jsには npm と呼ばれるパッケージマネージャがありますが、それに強く影響を受けています。 パッケージマネージャを利用することでライブラリを自分で管理する必要がなくなり、管理するファイルの数を減らすことができます。 また、パッケージマネージャを利用することでライブラリのバージョン管理をしやすくなります。 さらに自分のライブラリを Bower comp
★★ bower list --paths でソースマッピングが確認できる。変更するにはどうすればいい? 本家サイト:Bower - A package manager for the web BowerはJavaScript,CSS,HTMLなどを依存関係を含めて管理してくれる、フロントエンド用パッケージ管理ツール。Twitter製 各パッケージにある設定ファイル"bower.json"に依存パッケージが記述されており、インストール時に依存パッケージを含めて読み込む仕組み。プロジェクトディレクトリ内にbower.json があれば、そのプロジェクトはBower対応しているはず(Githubで今人気のライブラリを見てみると、ほぼ"bower.json"がある)。 環境構築時にプロジェクトに設定ファイル"bower.json"を置けば、それに記述されたパッケージ(依存パッケージ含む)を1コマ
普通に使う分には全く困らないほどの数のプラグインがGulpにはあります。 Githubでのstar数からも明らかなように、GoogleのWenStarterKitでもGulpが採用されるなど、注目度はますます高くなっています。 Gruntとの比較 Gruntと比較してのメリット・デメリットは以下のようになります。 メリット Gruntより設定ファイルが記述しやすい StreamAPIを利用することでファイルを毎回書き出すGruntより高速でエコ デメリット 記述がよりNodeに近くなるため、複雑なことは敷居がやや高め プラグイン開発のためのドキュメントが少ない 今日のゴール Gulp.jsを使ってコーディング作業を10倍速くする! そんな環境を作りたいと思います。 1. Node.jsをインストール まずはNode.jsをインストールしましょう。 Node.js http://nodejs
Update: I frequently get asked, considering this post is now years old, whether or not I still stand by the advice in this post, and whether new developers should use npm as a build tool. The advice still stands, and I believe developers should use npm as a build tool. Myself; I’ve been Gulp & Grunt free since 2013™. Should I ever change my stance on this, I will immediately update this post. Last
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? このポストは、Why I Left Gulp and Grunt for npm Scriptsを筆者の許諾を得て意訳したものです。間違いがありましたら、ご指摘いただけると幸いです。 (以下、訳) 私はGulpとGruntが不要な抽象化レイヤーだと気づきました。npmのscriptsはとても強力で、そっちの方が便利だったりします。 例を挙げましょう 私はかつてはGulpが大好きでした。しかし結局のところ、100行ものgulpfileと大量のgulpプラグインを扱うハメになりました。Gulp上でWebpackやBrowsersync、Mo
Flyとは https://github.com/flyjs/fly Node.js製のビルドシステムです。 gulp, Gruntなどと同じような事ができます。基本的なビルドシステムとしての機能を提供し、サードパーティのライブラリをもりもり入れていくことでできることの幅を増やしていく。というところも同じような感じです。 ただ大きくgulp, GruntとことなっていることとしてはFlyの場合、ES6のGeneratorを使って書いていくところです。 また、ES7で導入されるとされている『async/await』を使った記法も使えるようです。 早速適当な構成で試してみた 今回やってみたのは以下の様なこと src/にES6でコードを書いている src/に書いているコードをES5にコンパイルしてlib/に置く lib/に置かれたコードをbrowserifyでビルドしてbuild/に置きたい タ
背景 Javascript で Web アプリを作ろうとすると、よくわからないことだらけで超混乱します。 npm と bower の違いは? npm はサーバーサイド用、bower はクライアントサイド用らしいよ えっ、でもなんで bower のインストールに npm が必要なの? サーバーサイドは Rails で書きたいから npm 要らないと思うんだけど・・・ ていうかサーバーサイドJSとか node.js って何? よく見る browserify って何? こういった疑問が沸き上がるのは、各ツールが生まれた文脈がよくわかっていないからです。いろいろ調べてやっとちょっとわかってきたのでメモします。間違いがあったらご指摘ください。 「CommonJS」誕生 - Javascript は汎用プログラミング言語へ その昔、Javascript 大好きおじさんは言いました。 Javascrip
いつものhomebrew シリーズです。homebrew ではオプションで指定しない限りnpmまでインストールしてくれます。npmは node.js のパッケージ管理ツールです。では、さっそく以下から インストール 標準のターミナル.app や iTerm などで以下を入力します。 brew install node npm を使ってインストールするときに”npm install -g”とかのグローバルオプションが付いた場合デフォルトでは /usr/local/share/npm/bin にインストールされます。なので使用しているシェルが zsh なら~/.zshrc、bash なら~/.bash_profileに以下を追記してパスを通します。デフォルトの設定を変更するには$HOME/.npmrcを変更します。詳しくはドキュメントを。 # npm export PATH="/usr/loc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く