Hexoでブログを構築する


# はじめに

こんにちは。インフラエンジニアレベル１の[f_prg](http://twitter.com/f_prg "f_prg")です。
Node.jsでのブログ作成について、友人のFacebookのフィードから知ったのでインストールしてみました。
本家のサイトはコチラです。[http://hexo.io/](http://hexo.io/ "http://hexo.io/")

# 構築
## インストール

```bash
Last login: Sat Aug  9 09:03:09 on ttys001
[11:55:25][f_prg@mba:~]# npm install hexo -g
npm http GET https://registry.npmjs.org/hexo
npm http 200 https://registry.npmjs.org/hexo
npm http GET https://registry.npmjs.org/hexo/-/hexo-2.8.2.tgz
npm http 200 https://registry.npmjs.org/hexo/-/hexo-2.8.2.tgz
npm http GET https://registry.npmjs.org/chokidar/0.8.2
npm http GET https://registry.npmjs.org/colors/0.6.2
npm http GET https://registry.npmjs.org/compression
npm http GET https://registry.npmjs.org/connect
npm http GET https://registry.npmjs.org/hexo-front-matter/0.0.4
npm http GET https://registry.npmjs.org/highlight.js/8.1.0
npm http GET https://registry.npmjs.org/minimist/0.2.0
npm http GET https://registry.npmjs.org/morgan
npm http GET https://registry.npmjs.org/sprintf-js/0.0.7
npm http GET https://registry.npmjs.org/strip-indent
npm http GET https://registry.npmjs.org/swig/1.4.1
npm http GET https://registry.npmjs.org/serve-static
npm http GET https://registry.npmjs.org/warehouse/0.2.2
npm http GET https://registry.npmjs.org/cheerio/0.17.0
npm http GET https://registry.npmjs.org/graceful-fs
npm http GET https://registry.npmjs.org/js-yaml
npm http GET https://registry.npmjs.org/lodash
npm http GET https://registry.npmjs.org/mime
npm http GET https://registry.npmjs.org/moment
npm http GET https://registry.npmjs.org/async
npm http 200 https://registry.npmjs.org/compression
npm http 200 https://registry.npmjs.org/chokidar/0.8.2
npm http GET https://registry.npmjs.org/chokidar/-/chokidar-0.8.2.tgz
npm http GET https://registry.npmjs.org/compression/-/compression-1.0.10.tgz
npm http 200 https://registry.npmjs.org/colors/0.6.2
npm http GET https://registry.npmjs.org/colors/-/colors-0.6.2.tgz
npm http 200 https://registry.npmjs.org/hexo-front-matter/0.0.4
npm http GET https://registry.npmjs.org/hexo-front-matter/-/hexo-front-matter-0.0.4.tgz
npm http 200 https://registry.npmjs.org/connect
npm http 200 https://registry.npmjs.org/minimist/0.2.0
npm http 200 https://registry.npmjs.org/morgan
npm http 200 https://registry.npmjs.org/compression/-/compression-1.0.10.tgz
npm http 200 https://registry.npmjs.org/chokidar/-/chokidar-0.8.2.tgz
npm http GET https://registry.npmjs.org/minimist/-/minimist-0.2.0.tgz
npm http 200 https://registry.npmjs.org/highlight.js/8.1.0
npm http GET https://registry.npmjs.org/connect/-/connect-3.1.0.tgz
npm http 200 https://registry.npmjs.org/serve-static
npm http GET https://registry.npmjs.org/morgan/-/morgan-1.2.2.tgz
npm http 200 https://registry.npmjs.org/hexo-front-matter/-/hexo-front-matter-0.0.4.tgz
npm http GET https://registry.npmjs.org/highlight.js/-/highlight.js-8.1.0.tgz
npm http GET https://registry.npmjs.org/serve-static/-/serve-static-1.5.0.tgz
npm http 200 https://registry.npmjs.org/minimist/-/minimist-0.2.0.tgz
npm http 200 https://registry.npmjs.org/sprintf-js/0.0.7
npm http 200 https://registry.npmjs.org/serve-static/-/serve-static-1.5.0.tgz
npm http 200 https://registry.npmjs.org/morgan/-/morgan-1.2.2.tgz
npm http 200 https://registry.npmjs.org/strip-indent
npm http 200 https://registry.npmjs.org/warehouse/0.2.2
npm http GET https://registry.npmjs.org/sprintf-js/-/sprintf-js-0.0.7.tgz
npm http 200 https://registry.npmjs.org/graceful-fs
npm http GET https://registry.npmjs.org/strip-indent/-/strip-indent-0.1.3.tgz
npm http 200 https://registry.npmjs.org/cheerio/0.17.0
npm http 200 https://registry.npmjs.org/highlight.js/-/highlight.js-8.1.0.tgz
npm http GET https://registry.npmjs.org/warehouse/-/warehouse-0.2.2.tgz
npm http GET https://registry.npmjs.org/cheerio/-/cheerio-0.17.0.tgz
npm http 200 https://registry.npmjs.org/lodash
npm http 200 https://registry.npmjs.org/js-yaml
npm http 200 https://registry.npmjs.org/mime
npm http 200 https://registry.npmjs.org/sprintf-js/-/sprintf-js-0.0.7.tgz
npm http 200 https://registry.npmjs.org/moment
npm http GET https://registry.npmjs.org/js-yaml/-/js-yaml-3.1.0.tgz
npm http 200 https://registry.npmjs.org/warehouse/-/warehouse-0.2.2.tgz
npm http GET https://registry.npmjs.org/moment/-/moment-2.8.1.tgz
npm http 200 https://registry.npmjs.org/strip-indent/-/strip-indent-0.1.3.tgz
npm http 200 https://registry.npmjs.org/cheerio/-/cheerio-0.17.0.tgz
npm http 200 https://registry.npmjs.org/async
npm http 200 https://registry.npmjs.org/colors/-/colors-0.6.2.tgz
npm http 200 https://registry.npmjs.org/connect/-/connect-3.1.0.tgz
npm http 200 https://registry.npmjs.org/js-yaml/-/js-yaml-3.1.0.tgz
npm http 200 https://registry.npmjs.org/moment/-/moment-2.8.1.tgz
npm http 200 https://registry.npmjs.org/swig/1.4.1
npm http GET https://registry.npmjs.org/swig/-/swig-1.4.1.tgz
npm http 200 https://registry.npmjs.org/swig/-/swig-1.4.1.tgz
npm http GET https://registry.npmjs.org/compressible
npm http GET https://registry.npmjs.org/accepts
npm http GET https://registry.npmjs.org/bytes/1.0.0
npm http GET https://registry.npmjs.org/debug/1.0.4
npm http GET https://registry.npmjs.org/on-headers/0.0.0
npm http GET https://registry.npmjs.org/vary/0.1.0
npm http GET https://registry.npmjs.org/basic-auth/1.0.0
npm http GET https://registry.npmjs.org/depd/0.4.4
npm http GET https://registry.npmjs.org/finished
npm http GET https://registry.npmjs.org/parseurl
npm http GET https://registry.npmjs.org/send/0.8.1
npm http GET https://registry.npmjs.org/escape-html/1.0.1
npm http 200 https://registry.npmjs.org/compressible
npm http 200 https://registry.npmjs.org/accepts
npm http GET https://registry.npmjs.org/compressible/-/compressible-1.1.1.tgz
npm http GET https://registry.npmjs.org/accepts/-/accepts-1.0.7.tgz
npm http GET https://registry.npmjs.org/fsevents/0.2.0
npm http GET https://registry.npmjs.org/recursive-readdir/0.0.2
npm http 200 https://registry.npmjs.org/compressible/-/compressible-1.1.1.tgz
npm http 200 https://registry.npmjs.org/accepts/-/accepts-1.0.7.tgz
npm http 200 https://registry.npmjs.org/debug/1.0.4
npm http GET https://registry.npmjs.org/utils-merge/1.0.0
npm http GET https://registry.npmjs.org/finalhandler/0.1.0
npm http GET https://registry.npmjs.org/debug/-/debug-1.0.4.tgz
npm http 200 https://registry.npmjs.org/basic-auth/1.0.0
npm http 200 https://registry.npmjs.org/finished
npm http 200 https://registry.npmjs.org/vary/0.1.0
npm http 200 https://registry.npmjs.org/bytes/1.0.0
npm http 200 https://registry.npmjs.org/parseurl
npm http GET https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.0.tgz
npm http 200 https://registry.npmjs.org/debug/-/debug-1.0.4.tgz
npm http GET https://registry.npmjs.org/finished/-/finished-1.2.2.tgz
npm http GET https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz
npm http 200 https://registry.npmjs.org/depd/0.4.4
npm http GET https://registry.npmjs.org/vary/-/vary-0.1.0.tgz
npm http GET https://registry.npmjs.org/parseurl/-/parseurl-1.2.0.tgz
npm http GET https://registry.npmjs.org/depd/-/depd-0.4.4.tgz
npm http 200 https://registry.npmjs.org/send/0.8.1
npm http 200 https://registry.npmjs.org/parseurl/-/parseurl-1.2.0.tgz
npm http 200 https://registry.npmjs.org/escape-html/1.0.1
npm http 200 https://registry.npmjs.org/fsevents/0.2.0
npm http 200 https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.0.tgz
npm http 200 https://registry.npmjs.org/depd/-/depd-0.4.4.tgz
npm http 200 https://registry.npmjs.org/finished/-/finished-1.2.2.tgz
npm http 200 https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz
npm http 200 https://registry.npmjs.org/vary/-/vary-0.1.0.tgz
npm http GET https://registry.npmjs.org/send/-/send-0.8.1.tgz
npm http 200 https://registry.npmjs.org/recursive-readdir/0.0.2
npm http GET https://registry.npmjs.org/fsevents/-/fsevents-0.2.0.tgz
npm http GET https://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz
npm http GET https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-0.0.2.tgz
npm http 200 https://registry.npmjs.org/send/-/send-0.8.1.tgz
npm http 200 https://registry.npmjs.org/utils-merge/1.0.0
npm http 200 https://registry.npmjs.org/finalhandler/0.1.0
npm http 200 https://registry.npmjs.org/fsevents/-/fsevents-0.2.0.tgz
npm http 200 https://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz
npm http 200 https://registry.npmjs.org/on-headers/0.0.0
npm http 200 https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-0.0.2.tgz
npm http GET https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz
npm http GET https://registry.npmjs.org/finalhandler/-/finalhandler-0.1.0.tgz
npm http GET https://registry.npmjs.org/on-headers/-/on-headers-0.0.0.tgz
npm http GET https://registry.npmjs.org/async/0.7.0
npm http 200 https://registry.npmjs.org/finalhandler/-/finalhandler-0.1.0.tgz
npm http 200 https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz
npm http 200 https://registry.npmjs.org/on-headers/-/on-headers-0.0.0.tgz
npm http 200 https://registry.npmjs.org/async/0.7.0
npm http GET https://registry.npmjs.org/async/-/async-0.7.0.tgz
npm http 200 https://registry.npmjs.org/async/-/async-0.7.0.tgz
npm http GET https://registry.npmjs.org/htmlparser2
npm http GET https://registry.npmjs.org/dom-serializer
npm http GET https://registry.npmjs.org/CSSselect
npm http GET https://registry.npmjs.org/entities
npm http 200 https://registry.npmjs.org/htmlparser2
npm http GET https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.7.3.tgz
npm http GET https://registry.npmjs.org/ee-first/1.0.3
npm http 200 https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.7.3.tgz
npm http GET https://registry.npmjs.org/mime-types
npm http GET https://registry.npmjs.org/negotiator/0.4.7
npm http GET https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/finished/1.2.2
npm http GET https://registry.npmjs.org/fresh/0.2.2
npm http GET https://registry.npmjs.org/range-parser
npm http GET https://registry.npmjs.org/argparse
npm http GET https://registry.npmjs.org/esprima
npm http 200 https://registry.npmjs.org/entities
npm http GET https://registry.npmjs.org/entities/-/entities-1.1.1.tgz
npm http 200 https://registry.npmjs.org/mime-types
npm http 200 https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz
npm http GET https://registry.npmjs.org/ms/-/ms-0.6.2.tgz
npm http 200 https://registry.npmjs.org/ee-first/1.0.3
npm http GET https://registry.npmjs.org/ee-first/-/ee-first-1.0.3.tgz
npm http GET https://registry.npmjs.org/nan
npm http 200 https://registry.npmjs.org/fresh/0.2.2
npm http 200 https://registry.npmjs.org/ee-first/-/ee-first-1.0.3.tgz
npm http GET https://registry.npmjs.org/fresh/-/fresh-0.2.2.tgz
npm http 200 https://registry.npmjs.org/range-parser
npm http GET https://registry.npmjs.org/range-parser/-/range-parser-1.0.0.tgz
npm http GET https://registry.npmjs.org/uglify-js
npm http GET https://registry.npmjs.org/optimist
npm http 200 https://registry.npmjs.org/range-parser/-/range-parser-1.0.0.tgz
npm http 200 https://registry.npmjs.org/dom-serializer
npm http GET https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.0.1.tgz
npm http 200 https://registry.npmjs.org/esprima
npm http 200 https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.0.1.tgz
npm http 200 https://registry.npmjs.org/fresh/-/fresh-0.2.2.tgz
npm http 200 https://registry.npmjs.org/finished/1.2.2
npm http 200 https://registry.npmjs.org/negotiator/0.4.7
npm http 200 https://registry.npmjs.org/CSSselect
npm http GET https://registry.npmjs.org/finished/-/finished-1.2.2.tgz
npm http 200 https://registry.npmjs.org/optimist
npm http GET https://registry.npmjs.org/CSSselect/-/CSSselect-0.4.1.tgz
npm http GET https://registry.npmjs.org/negotiator/-/negotiator-0.4.7.tgz
npm http 200 https://registry.npmjs.org/uglify-js
npm http GET https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.15.tgz
npm http 200 https://registry.npmjs.org/CSSselect/-/CSSselect-0.4.1.tgz
npm http 200 https://registry.npmjs.org/argparse
npm http 200 https://registry.npmjs.org/negotiator/-/negotiator-0.4.7.tgz
npm http 200 https://registry.npmjs.org/nan
npm http 200 https://registry.npmjs.org/entities/-/entities-1.1.1.tgz
npm http 200 https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.15.tgz
npm http 200 https://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz
npm http 200 https://registry.npmjs.org/ms/-/ms-0.6.2.tgz

> fsevents@0.2.0 install /usr/local/lib/node_modules/hexo/node_modules/chokidar/node_modules/fsevents
> node-gyp rebuild

  CXX(target) Release/obj.target/fse/fsevents.o
  SOLINK_MODULE(target) Release/fse.node
  SOLINK_MODULE(target) Release/fse.node: Finished
npm http 200 https://registry.npmjs.org/finished/-/finished-1.2.2.tgz
npm http GET https://registry.npmjs.org/underscore
npm http GET https://registry.npmjs.org/underscore.string
npm http 200 https://registry.npmjs.org/underscore
npm http 200 https://registry.npmjs.org/underscore.string
npm http GET https://registry.npmjs.org/domelementtype
npm http 200 https://registry.npmjs.org/domelementtype
npm http GET https://registry.npmjs.org/domhandler
npm http GET https://registry.npmjs.org/domutils
npm http GET https://registry.npmjs.org/readable-stream
npm http GET https://registry.npmjs.org/entities/-/entities-1.0.0.tgz
npm http GET https://registry.npmjs.org/domutils
npm http GET https://registry.npmjs.org/CSSwhat
npm http 200 https://registry.npmjs.org/domutils
npm http GET https://registry.npmjs.org/domutils/-/domutils-1.5.0.tgz
npm http 200 https://registry.npmjs.org/entities/-/entities-1.0.0.tgz
npm http 200 https://registry.npmjs.org/domutils/-/domutils-1.5.0.tgz
npm http 200 https://registry.npmjs.org/domutils
npm http 200 https://registry.npmjs.org/domhandler
npm http GET https://registry.npmjs.org/wordwrap
npm http GET https://registry.npmjs.org/minimist
npm http GET https://registry.npmjs.org/domhandler/-/domhandler-2.2.0.tgz
npm http 200 https://registry.npmjs.org/readable-stream
npm http 200 https://registry.npmjs.org/wordwrap
npm http 200 https://registry.npmjs.org/domhandler/-/domhandler-2.2.0.tgz
npm http 200 https://registry.npmjs.org/minimist
npm http GET https://registry.npmjs.org/source-map/0.1.34
npm http GET https://registry.npmjs.org/async
npm http GET https://registry.npmjs.org/uglify-to-browserify
npm http 200 https://registry.npmjs.org/source-map/0.1.34
npm http GET https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz
npm http 200 https://registry.npmjs.org/uglify-to-browserify
npm http GET https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz
npm http 200 https://registry.npmjs.org/CSSwhat
npm http 200 https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz
npm http 304 https://registry.npmjs.org/async
npm http GET https://registry.npmjs.org/isarray/0.0.1
npm http GET https://registry.npmjs.org/string_decoder
npm http GET https://registry.npmjs.org/core-util-is
npm http GET https://registry.npmjs.org/inherits
npm http 200 https://registry.npmjs.org/isarray/0.0.1
npm http GET https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz
npm http 200 https://registry.npmjs.org/core-util-is
npm http 200 https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz
npm http 200 https://registry.npmjs.org/string_decoder
npm http 200 https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz
npm http 200 https://registry.npmjs.org/inherits
npm http GET https://registry.npmjs.org/amdefine
npm http 200 https://registry.npmjs.org/amdefine
/usr/local/bin/hexo -> /usr/local/lib/node_modules/hexo/bin/hexo
hexo@2.8.2 /usr/local/lib/node_modules/hexo
├── strip-indent@0.1.3
├── hexo-front-matter@0.0.4
├── sprintf-js@0.0.7
├── graceful-fs@3.0.2
├── colors@0.6.2
├── minimist@0.2.0
├── mime@1.2.11
├── async@0.9.0
├── morgan@1.2.2 (basic-auth@1.0.0, bytes@1.0.0, depd@0.4.4, finished@1.2.2)
├── warehouse@0.2.2 (async@0.7.0)
├── highlight.js@8.1.0
├── connect@3.1.0 (utils-merge@1.0.0, parseurl@1.2.0, finalhandler@0.1.0, debug@1.0.4)
├── lodash@2.4.1
├── serve-static@1.5.0 (escape-html@1.0.1, parseurl@1.2.0, send@0.8.1)
├── compression@1.0.10 (vary@0.1.0, on-headers@0.0.0, compressible@1.1.1, bytes@1.0.0, debug@1.0.4, accepts@1.0.7)
├── js-yaml@3.1.0 (esprima@1.0.4, argparse@0.1.15)
├── moment@2.8.1
├── cheerio@0.17.0 (entities@1.1.1, dom-serializer@0.0.1, CSSselect@0.4.1, htmlparser2@3.7.3)
├── swig@1.4.1 (optimist@0.6.1, uglify-js@2.4.15)
└── chokidar@0.8.2 (recursive-readdir@0.0.2, fsevents@0.2.0)
[11:56:13][f_prg@mba:~]# cd Documents/project
[11:58:52][f_prg@mba:project]# mkdir node-hexo-blog
[11:59:02][f_prg@mba:project]# cd node-hexo-blog/
[11:59:05][f_prg@mba:node-hexo-blog]# hexo init blog
[info] Copying data
[info] You are almost done! Don't forget to run `npm install` before you start blogging with Hexo!
[11:59:13][f_prg@mba:node-hexo-blog]# cd blog/
[11:59:34][f_prg@mba:blog]# npm install
npm http GET https://registry.npmjs.org/hexo-renderer-stylus
npm http GET https://registry.npmjs.org/hexo-renderer-ejs
npm http GET https://registry.npmjs.org/hexo-renderer-marked
npm http 200 https://registry.npmjs.org/hexo-renderer-stylus
npm http GET https://registry.npmjs.org/hexo-renderer-stylus/-/hexo-renderer-stylus-0.1.0.tgz
npm http 200 https://registry.npmjs.org/hexo-renderer-stylus/-/hexo-renderer-stylus-0.1.0.tgz
npm http 200 https://registry.npmjs.org/hexo-renderer-ejs
npm http GET https://registry.npmjs.org/hexo-renderer-ejs/-/hexo-renderer-ejs-0.1.0.tgz
npm http 200 https://registry.npmjs.org/hexo-renderer-marked
npm http GET https://registry.npmjs.org/hexo-renderer-marked/-/hexo-renderer-marked-0.1.0.tgz
npm http 200 https://registry.npmjs.org/hexo-renderer-ejs/-/hexo-renderer-ejs-0.1.0.tgz
npm http 200 https://registry.npmjs.org/hexo-renderer-marked/-/hexo-renderer-marked-0.1.0.tgz
npm http GET https://registry.npmjs.org/ejs
npm http GET https://registry.npmjs.org/stylus
npm http GET https://registry.npmjs.org/nib
npm http GET https://registry.npmjs.org/lodash
npm http GET https://registry.npmjs.org/marked
npm http 200 https://registry.npmjs.org/marked
npm http 304 https://registry.npmjs.org/lodash
npm http GET https://registry.npmjs.org/marked/-/marked-0.3.2.tgz
npm http 200 https://registry.npmjs.org/nib
npm http 200 https://registry.npmjs.org/ejs
npm http GET https://registry.npmjs.org/nib/-/nib-1.0.3.tgz
npm http 200 https://registry.npmjs.org/stylus
npm http GET https://registry.npmjs.org/ejs/-/ejs-1.0.0.tgz
npm http GET https://registry.npmjs.org/stylus/-/stylus-0.44.0.tgz
npm http 200 https://registry.npmjs.org/marked/-/marked-0.3.2.tgz
npm http 200 https://registry.npmjs.org/nib/-/nib-1.0.3.tgz
npm http 200 https://registry.npmjs.org/stylus/-/stylus-0.44.0.tgz
npm http 200 https://registry.npmjs.org/ejs/-/ejs-1.0.0.tgz
npm http GET https://registry.npmjs.org/stylus/-/stylus-0.37.0.tgz
npm http 200 https://registry.npmjs.org/stylus/-/stylus-0.37.0.tgz
npm http GET https://registry.npmjs.org/css-parse
npm http GET https://registry.npmjs.org/mkdirp
npm http GET https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/sax
npm http GET https://registry.npmjs.org/glob
npm http 200 https://registry.npmjs.org/mkdirp
npm http 200 https://registry.npmjs.org/debug
npm http 200 https://registry.npmjs.org/glob
npm http 200 https://registry.npmjs.org/css-parse
npm http GET https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz
npm http 200 https://registry.npmjs.org/sax
npm http 200 https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz
npm http GET https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/inherits
npm http GET https://registry.npmjs.org/minimatch
npm http 304 https://registry.npmjs.org/inherits
npm http 200 https://registry.npmjs.org/minimatch
npm http 304 https://registry.npmjs.org/ms/0.6.2
npm http GET https://registry.npmjs.org/lru-cache
npm http GET https://registry.npmjs.org/sigmund
npm http 200 https://registry.npmjs.org/sigmund
npm http GET https://registry.npmjs.org/cssom
npm http 200 https://registry.npmjs.org/cssom
npm http GET https://registry.npmjs.org/cssom/-/cssom-0.2.5.tgz
npm http 200 https://registry.npmjs.org/cssom/-/cssom-0.2.5.tgz
npm http 200 https://registry.npmjs.org/lru-cache
hexo-renderer-marked@0.1.0 node_modules/hexo-renderer-marked
├── marked@0.3.2
└── lodash@2.4.1

hexo-renderer-ejs@0.1.0 node_modules/hexo-renderer-ejs
├── ejs@1.0.0
└── lodash@2.4.1

hexo-renderer-stylus@0.1.0 node_modules/hexo-renderer-stylus
├── stylus@0.44.0 (css-parse@1.7.0, mkdirp@0.3.5, debug@1.0.4, sax@0.5.8, glob@3.2.11)
└── nib@1.0.3 (stylus@0.37.0)
```

## ブラウザで確認する

下記コマンドで、サーバを起動します。

```bash
[12:34:32][f_prg@mba:blog]# hexo server
[info] Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.
```

http://localhost:4000/
にアクセスすれば、確認できます。

![キャプチャ](http://blog.star-flare.com/2014/08/10/hexo_install/hexo_install_001.png "キャプチャ")

## 記事を投稿する

コマンドで投稿して、Markdownを編集するだけの簡単なものです。

```bash
[12:25:56][f_prg@mba:blog]# hexo new "My New Post"
[info] File created at /Users/f_prg/Documents/project/node-hexo-blog/blog/source/_posts/My-New-Post.md
[12:25:59][f_prg@mba:blog]# vim /Users/f_prg/Documents/project/node-hexo-blog/blog/source/_posts/My-New-Post.md
```

# まとめ
簡単ですが、Markdownでの構築が好きな方にはハマるかもしれません。
画像のアップロードがちょっとやりづらいので、プラグインがあるので期待してみます。

# 参考資料・リンク
[http://hexo.io/](http://hexo.io/ "http://hexo.io/")