express-generatorを使ってみる

参考:
node.jsにおける、npmとpackage.jsonという作法について
http://expressjs.com/starter/generator.html

アプリの骨組み

uraway.hatenablog.com
前に作ったBMI計算機をgithubに乗せてみました。
(ちなみに画像は拾い物)
それがこちら
uraway/bmicalcapp · GitHub

クローンして

npm install 
npm start

で必要なモジュールがインストールされ、ローカルサーバが立ち上がり、http://localhost:3000/にアクセスできます。

こうしたアプリケーションの骨組みを作るのが、express-generatorというわけ。

express-generatorの使い方

まず、express-generatorをグローバル領域にインストール

npm install express-generator -g

bmicalcappのルートディレクトリに移動して、

express bmicalcapp

すると諸々立ち上がる。その中のpackage.jsonを編集してみる

{
  "name": "bmicalcapp",
  "version": "0.0.1",
  "description": "BMI calculator",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "devDependencies": {
    "body-parser": "~1.13.2",
    "cookie-parser": "~1.3.5",
    "debug": "~2.2.0",
    "express": "~4.13.1",
    "jade": "~1.11.0",
    "morgan": "~1.6.1",
    "serve-favicon": "~2.3.0",
    "babel-eslint": "4.1.5",
    "jquery": "2.1.1",
    "eslint": "1.9.0",
    "eslint-plugin-react": "3.8.0"
  },
  "engines" : { "node" : "0.12.7" },
  "main": "app.js",
  "author": "",
  "license": "ISC",
  "description": "",
  "dependencies": {
  },
  "repository": {
    "type": "git",
    "url": "git@github.com:uraway/bmicalcapp.git"
  },
  "author": "uraway",
  "bugs": {
    "url": "https://github.com/uraway/bmicalcapp/issues"
  },
  "homepage": "http://uraway.hatenablog.com/"
}
}

"dependencies"がnpm installによってインストールされるmodule群を管理しているみたいです。さらに"script"をいじることで自分好みのコマンドを追加できます。
dependenciesとdevDependenciesがありますが、devはdevelopment(developer?)の略のようです。
つまり

  • 開発上必要なmoduleの管理 devDependencies
  • 実行に必要なmoduleの管理 dependencies

といったところでしょうか。テストに利用するexpressや、ドキュメントのライブラリなんかはdevDependenciesですね。


react,react-domをインストールしたものから読み込ませようとしたら深みにはまったので今回はここまで。