{"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"valleykid","email":"valleykiddy@gmail.com"}],"keywords":["roadhog","react","cli","create-react-app","webpack"],"dist-tags":{"latest":"0.6.0-beta.4","beta":"0.6.0-beta.3"},"description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","readme":"# roadhog\n\n[![NPM version](https://img.shields.io/npm/v/roadhog.svg?style=flat)](https://npmjs.org/package/roadhog)\n[![Build Status](https://img.shields.io/travis/sorrycc/roadhog.svg?style=flat)](https://travis-ci.org/sorrycc/roadhog)\n[![NPM downloads](http://img.shields.io/npm/dm/roadhog.svg?style=flat)](https://npmjs.org/package/roadhog)\n[![Dependencies](https://david-dm.org/sorrycc/roadhog/status.svg)](https://david-dm.org/sorrycc/roadhog)\n\n[View README in English](./README_en-us.md)\n\nroadhog 是一个 cli 工具，提供 `server`、 `build` 和 `test` 三个命令，分别用于本地调试和构建，并且提供了特别易用的 [mock 功能](#mock)。命令行体验和 create-react-app 一致，配置略有不同，比如默认开启 [css modules](https://github.com/css-modules/css-modules)，**然后还提供了 [JSON 格式的配置方式](https://github.com/sorrycc/roadhog#配置)**。\n\n* [介绍 roadhog —— 让 create-react-app 可配的命令行工具](https://github.com/sorrycc/blog/issues/15)\n* [从 atool-build + dora 到 roadhog](https://github.com/sorrycc/blog/issues/17)\n\n---\n\n<p align=\"center\">\n  <img src=\"https://zos.alipayobjects.com/rmsportal/vpkwOtXNukXpeQBNToEb.gif\" width=\"926\" height=\"521\" />\n</p>\n\n## Why roadhog\n\n由于 [create-react-app](https://github.com/facebookincubator/create-react-app) 的默认配置不能满足需求，而他又不提供定制的功能，于是基于他实现了一个可配置版。所以如果既要 create-react-app 的优雅体验，又想定制配置，那么可以试试 roadhog 。\n\n## Getting Started\n\n### 安装\n\n```bash\n$ npm i roadhog -g\n```\n\n### 使用\n\n本地开发\n\n```bash\n$ roadhog server\n```\n\n打包发布\n\n```bash\n$ roadhog build\n```\n\n测试，默认会跑 `./test` 目录下的所有文件\n\n```bash\n$ roadhog test\n```\n\n## 特性\n\n### 错误处理\n\n感谢 create-react-app，roadhog 在错误处理上有着良好的体验。此外，roadhog 针对 `.roadhogrc` 的解析错误也做了优化。\n\n#### .roadhogrc 解析错误\n\n<img src=\"https://zos.alipayobjects.com/rmsportal/wPGMQwhZmFhGddMZKFci.png\" width=\"809\" height=\"585\" />\n\n#### 语法错误\n\n控制台\n\n<img src=\"https://zos.alipayobjects.com/rmsportal/BWnfDJQqlnGvHSZxOVuY.png\" width=\"809\" height=\"585\" />\n\n浏览器\n\n<img src=\"https://zos.alipayobjects.com/rmsportal/onzXGetQRKGmWQXmICDC.png\" width=\"893\" height=\"751\" />\n\n#### 运行时错误\n\n没有捕获，在浏览器的控制台查看。\n\n#### .roadhogrc.mock.js 解析错误\n\n<img src=\"https://zos.alipayobjects.com/rmsportal/awkFmHoxLWdRgbTlCzDF.png\" width=\"745\" height=\"551\" />\n\n### HMR (热替换)\n\nCSS 在开发模式下会走 style-loader (被内嵌在 JavaScript 文件中)，所以只要保证 JavaScript 的热更新，即可实现 CSS 的热更新。\n\n如果大家使用 [dva](https://github.com/dvajs/dva) ，配上 [babel-plugin-dva-hmr](https://github.com/dvajs/babel-plugin-dva-hmr) 即可实现 routes 和 components 以及相关 CSS 修改的热更新，其他修改会自动刷新页面。\n\n```json\n\"env\": {\n  \"development\": {\n    \"extraBabelPlugins\": [\"dva-hmr\"]\n  }\n}\n```\n\n### Mock\n\nroadhog server 支持 mock 功能，类似 [dora-plugin-proxy](https://github.com/dora-js/dora-plugin-proxy)，在 `.roadhogrc.mock.js` 中进行配置，支持基于 require 动态分析的实时刷新，支持 ES6 语法，以及友好的出错提示。\n\n比如：\n\n```js\nexport default {\n  // 支持值为 Object 和 Array\n  'GET /api/users': { users: [1,2] },\n\n  // GET POST 可省略\n  '/api/users/1': { id: 1 },\n\n  // 支持自定义函数，API 参考 express@4\n  'POST /api/users/create': (req, res) => { res.end('OK'); },\n\n  // Forward 到另一个服务器\n  'GET /assets/*': 'https://assets.online/',\n\n  // Forward 到另一个服务器，并指定子路径\n  // 请求 /someDir/0.0.50/index.css 会被代理到 https://g.alicdn.com/tb-page/taobao-home, 实际返回 https://g.alicdn.com/tb-page/taobao-home/0.0.50/index.css\n  'GET /someDir/(.*)': 'https://g.alicdn.com/tb-page/taobao-home',\n};\n```\n\n### 智能重启\n\n配置文件修改的修改会触发 roadhog server 的自动重启，会触发重启的文件有：\n\n* `.roadhogrc`\n* `.roadhogrc.js`\n* `.roadhogrc.mock.js`\n* theme 配置指定的文件\n\n## 配置\n\n关于配置的一些基本概念：\n\n* 配置存于 `.roadhogrc` 文件中（如果你不喜欢 JSON 配置，可以用 `.roadhogrc.js` 以 JS 的方式编写，支持 ES6）\n* 格式为 `JSON`，允许注释\n* 布尔类型的配置项默认值均为 `false`\n* 支持通过 `webpack.config.js` 以编码的方式进行配置，但不推荐，因为 roadhog 本身的 major 或 minor 升级可能会引起兼容问题。使用时会给予警告⚠️⚠️⚠️，详见 [#36](https://github.com/sorrycc/roadhog/issues/36) 。（`webpack.config.js` 本身的编写支持 ES6，会通过 babal-register 做一层转换。）\n\n默认配置：\n\n```json\n{\n  \"entry\": \"src/index.js\",\n  \"disableCSSModules\": false,\n  \"publicPath\": \"/\",\n  \"outputPath\": \"./dist\",\n  \"extraBabelPlugins\": [],\n  \"extraPostCSSPlugins\": [],\n  \"autoprefixer\": null,\n  \"proxy\": null,\n  \"externals\": null,\n  \"multipage\": false,\n  \"define\": null,\n  \"env\": null,\n  \"theme\": null,\n}\n```\n\n查看更多[配置相关问题和改进](https://github.com/sorrycc/roadhog/issues?q=is%3Aissue+is%3Aopen+label%3Aconfig)。\n\n### entry\n\n指定 webpack 入口文件，支持 [glob](https://github.com/isaacs/node-glob) 格式。\n\n如果你的项目是多页类型，会希望把 `src/pages` 的文件作为入口。可以这样配：\n\n```\n\"entry\": \"src/pages/*.js\"\n```\n\n### disableCSSModules\n\n禁用 [CSS Modules](https://github.com/css-modules/css-modules)。最好别关，熟悉并使用他后，你会发现写样式简单了很多。\n\n### publicPath\n\n配置生产环境的 [publicPath](http://webpack.github.io/docs/configuration.html#output-publicpath)，开发环境下永远为 `/`。\n\n### outputPath\n\n配置[输出路径](http://webpack.github.io/docs/configuration.html#output-path)，默认是 `./dist`。\n\n### extraBabelPlugins\n\n配置额外的 babel plugin。babel plugin 只能添加，不允许覆盖和删除。\n\n比如，同时使用 antd, dva 时，通常需要这么配：\n\n```\n\"extraBabelPlugins\": [\n  \"transform-runtime\",\n  \"dva-hmr\",\n  [\"import\", { \"libraryName\": \"antd\", \"libraryDirectory\": \"lib\", \"style\": \"css\" }]\n]\n```\n\n同时安装相关依赖：\n\n```bash\n$ npm i babel-plugin-transform-runtime babel-plugin-import babel-plugin-dva-hmr --save-dev\n$ npm i babel-runtime --save\n```\n\n注意：这么配还有个问题，`dva-hmr` 是开发环境的插件，如果 build 时也用上就会打出冗余代码。解决方案详见 [#env](#env)。\n\n### extraPostCSSPlugins\n\n配置额外的 postcss 插件。\n\n注意：由于 postcss 的插件是以函数的方式进行配置的，所以这个配置只能在 `.roadhogrc.js` 里使用。\n\n比如：\n\n```\nextraPostCSSPlugins: [\n  pxtorem({\n    rootValue: 100,\n    propWhiteList: [],\n  }),\n],\n```\n\n### autoprefixer\n\n配置 autoprefixer 参数，详见 [autoprefixer](https://github.com/postcss/autoprefixer) 和 [browserslist](https://github.com/ai/browserslist#queries)。\n\n比如，如果是做移动端的开发，可以配成：\n\n```\n\"autoprefixer\": {\n  \"browsers\": [\n    \"iOS >= 8\", \"Android >= 4\"\n  ]\n}\n```\n\n### proxy\n\n配置代理，详见 [webpack-dev-server#proxy](https://webpack.github.io/docs/webpack-dev-server.html#proxy)。\n\n如果要代理请求到其他服务器，可以这样配：\n\n```\n\"proxy\": {\n  \"/api\": {\n    \"target\": \"http://jsonplaceholder.typicode.com/\",\n    \"changeOrigin\": true,\n    \"pathRewrite\": { \"^/api\" : \"\" }\n  }\n}\n```\n\n然后访问 `/api/users` 就能访问到 http://jsonplaceholder.typicode.com/users 的数据。\n\n如果要做数据 mock，可以考虑和 [json-server](https://github.com/typicode/json-server) 结合使用，把 `/api` 代理到 json-server 启动的端口。\n\n### externals\n\n配置 webpack 的 [externals](http://webpack.github.io/docs/configuration.html#externals) 属性。\n\n### multipage\n\n配置是否多页应用。多页应用会自动提取公共部分为 common.js 和 common.css 。\n\n### define\n\n配置 webpack 的 [DefinePlugin](http://webpack.github.io/docs/list-of-plugins.html#defineplugin) 插件，define 的值会自动做 `JSON.stringify` 处理。\n\n### env\n\n针对特定的环境进行配置。server 的环境变量是 `development`，build 的环境变量是 `production`。\n\n比如：\n\n```\n\"extraBabelPlugins\": [\"transform-runtime\"],\n\"env\": {\n  \"development\": {\n    \"extraBabelPlugins\": [\"dva-hmr\"]\n  }\n}\n```\n\n这样，开发环境下的 extraBabelPlugins 是 `[\"transform-runtime\", \"dva-hmr\"]`，而生产环境下是 `[\"transform-runtime\"]`。\n\n### theme\n\n配置主题，实际上是配 less 的 `modifyVars`。支持 Object 和文件路径两种方式的配置。\n\n比如：\n\n```\n\"theme\": {\n  \"@primary-color\": \"#1DA57A\"\n}\n```\n\n或者，\n\n```\n\"theme\": \"./node_modules/abc/theme-config.js\"\n```\n\n这里有 [如何配置 antd theme 的例子](https://github.com/dvajs/dva-example-user-dashboard/commit/d6da33b3a6e18eb7f003752a4b00b5a660747c31) 。\n\n### svgSpriteLoaderDirs\n\n配置一个路径数组, 该路径下的 svg 文件会全部交给 [svg-sprite-loader](https://github.com/kisenka/svg-sprite-loader) 处理\n\n比如，使用 antd-mobile 的 [自定义 svg icon](https://mobile.ant.design/components/icon) 功能的用户，可以在 `.roadhogrc.js` 文件中做如下配置\n\n```js\n// npm i antd-mobile -S\nconst path = require('path');\nconst svgSpriteDirs = [\n  require.resolve('antd-mobile').replace(/warn\\.js$/, ''), // antd-mobile 内置svg\n  path.resolve(__dirname, 'src/my-project-svg-foler'),  // 业务代码本地私有 svg 存放目录\n];\n\nexport default {\n  // ...\n  svgSpriteLoaderDirs: svgSpriteDirs,\n  //...\n}\n\n```\n\n\n## 环境变量\n\n可环境变量临时配置一些参数，包括：\n\n* `PORT`, 端口号，默认 8000\n* `HOST`, 默认 localhost\n* `HTTPS`，是否开启 https，默认关闭\n* `BROWSER`，设为 none 时不自动打开浏览器\n\n比如，使用 3000 端口开启服务器可以这样：\n\n```bash\n// OS X, Linux\n$ PORT=3000 roadhog server\n\n// Windows (cmd.exe)\n$ set PORT=3000&&roadhog server\n```\n\n## 命令行参数\n\n### roadhog server\n\n```bash\n$ roadhog server -h\nUsage: roadhog server [options]\n\nOptions:\n  -h      Show help                                                    [boolean]\n```\n\n### roadhog build\n\n```bash\n$ roadhog build -h\nUsage: roadhog build [options]\n\nOptions:\n  --debug            Build without compress           [boolean] [default: false]\n  --watch, -w        Watch file changes and rebuild   [boolean] [default: false]\n  --output-path, -o  Specify output path                [string] [default: null]\n  --analyze          Visualize and analyze your Webpack bundle.\n                                                      [boolean] [default: false]\n  -h                 Show help                                         [boolean]\n```\n\n### roadhog test\n\n```bash\n$ roadhog test -h\nUsage: roadhog test [options] [mocha-options]\n\nOptions:\n  --coverage  Output coverage                         [boolean] [default: false]\n  -h          Show help                                                [boolean]\n```\n\n## 使用 `public` 目录\n我们约定 `public` 目录下的文件会在 server 和 build 时被自动 copy 到输出目录（默认是 `./dist`）下。所以可以在这里存放 favicon, iconfont, html, html 里引用的图片等。\n\n## FAQ\n\n### 那么为什么提供 JSON 级别的约定型配置，而非类似 webpack.config.js 的编码型配置?\n\n首先是 JSON 的方式比较简单，`true`/`false` 或是一些简单的字符串就可完成配置；另外，JSON 方式能有效控制使用场景，而编程式的非常不可控，roadhog 的一个简单改动都可能导致之前的配置不可用。\n\n### 为什么叫 roadhog ?\n\nroadhog 即路霸，和 [dva](https://github.com/dvajs/dva) 一样，是守望先锋中的另一名英雄，希望能为 dva 保驾护航。\n\n<img src=\"https://zos.alipayobjects.com/rmsportal/guCnwwMItoLOTmcdbaEZ.png\" width=\"200\" height=\"200\" />\n\n### 报 `Unexpected token` 错误，类似下面这样\n\n```\nError in ./index.js\nModule parse failed: /Users/chencheng/Documents/Work/Misc/dva-cli/boilerplates/demo/index.js Unexpected token (15:23)\nYou may need an appropriate loader to handle this file type.\nSyntaxError: Unexpected token (15:23)\n @ multi index\n```\n\n把源码放到 src 目录下，因为非 src 目录下的文件不会走 babel 编译。\n\n### Windows/Ubuntu 下每次启动后打开新 Tab 比较烦\n\n```bash\n# Ubuntu\n$ BROWSER=none roadhog server\n\n# Windows\n$ set BROWSER=none&&roadhog server\n```\n\n## LICENSE\n\nMIT\n","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"license":"MIT","versions":{"0.0.1-alpha":{"name":"roadhog","version":"0.0.1-alpha","_id":"roadhog@0.0.1-alpha","scripts":{},"_shasum":"2a235f69fbdbeb286d7e431b87bc7f1a4ff1e986","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.2.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"2a235f69fbdbeb286d7e431b87bc7f1a4ff1e986","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.0.1-alpha.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/roadhog-0.0.1-alpha.tgz_1466688362179_0.5652146502397954"},"directories":{}},"0.1.0":{"name":"roadhog","version":"0.1.0","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","path-exists":"^3.0.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"7b5eaeaade8c5f2863be5e44baa5073a8a4fb5c7","_id":"roadhog@0.1.0","_shasum":"b6a27fad188072c3e947f52ba5f2a76e48bb559f","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"b6a27fad188072c3e947f52ba5f2a76e48bb559f","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.1.0.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.1.0.tgz_1481792606167_0.6480306717567146"},"directories":{}},"0.2.0":{"name":"roadhog","version":"0.2.0","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","parse-json":"^2.2.0","path-exists":"^3.0.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"bf768b37f8964d8590ff5c03502f1544167b949d","_id":"roadhog@0.2.0","_shasum":"c48a268e0de871c7b91625caf0513f771385b752","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"c48a268e0de871c7b91625caf0513f771385b752","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.2.0.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.2.0.tgz_1481860153587_0.8401857702992857"},"directories":{}},"0.2.1":{"name":"roadhog","version":"0.2.1","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","parse-json-pretty":"^0.1.0","path-exists":"^3.0.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"e4d929c6a20e68fe4e9a0767ea85ac47beb88c0e","_id":"roadhog@0.2.1","_shasum":"bd0f064e2d91da97ce0318b3fa386acad7be2dff","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"bd0f064e2d91da97ce0318b3fa386acad7be2dff","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.2.1.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.2.1.tgz_1481860887376_0.9893354023806751"},"directories":{}},"0.2.2":{"name":"roadhog","version":"0.2.2","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"4d9919946cc5e68fb4ac0790abe9864a239f3c6a","_id":"roadhog@0.2.2","_shasum":"569f1035c8050714629b75aee5a6af66a3ea27df","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"569f1035c8050714629b75aee5a6af66a3ea27df","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.2.2.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.2.2.tgz_1482237628129_0.9790842570364475"},"directories":{}},"0.2.3":{"name":"roadhog","version":"0.2.3","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"6efa97cab1c92e8f829388d7bfb19dd7d881ce2d","_id":"roadhog@0.2.3","_shasum":"b8a5627c83f06d2e0b51420d502745e5012a8445","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"b8a5627c83f06d2e0b51420d502745e5012a8445","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.2.3.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.2.3.tgz_1482314687217_0.776354348519817"},"directories":{}},"0.3.0":{"name":"roadhog","version":"0.3.0","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"ed499561483e059318f92a77572a2eafe60b4f0b","_id":"roadhog@0.3.0","_shasum":"422f8629847a016c6330e4ad0b974ba12861d92a","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"422f8629847a016c6330e4ad0b974ba12861d92a","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.3.0.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.3.0.tgz_1482394461155_0.8441551190335304"},"directories":{}},"0.3.1":{"name":"roadhog","version":"0.3.1","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"0a37eb9f4a1a4466807ad1dad5639d91305eeead","_id":"roadhog@0.3.1","_shasum":"1b0a5159a7cec52da723332837aaf211f2706dde","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"1b0a5159a7cec52da723332837aaf211f2706dde","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.3.1.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.3.1.tgz_1482475549907_0.07856765133328736"},"directories":{}},"0.3.2":{"name":"roadhog","version":"0.3.2","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"ab9334471e17e1a1f1a84a16516af680528801d5","_id":"roadhog@0.3.2","_shasum":"c31a888f729362ec1db215ebfdd260ec8d2d6315","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"c31a888f729362ec1db215ebfdd260ec8d2d6315","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.3.2.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.3.2.tgz_1482619751055_0.6640726900659502"},"directories":{}},"0.4.0":{"name":"roadhog","version":"0.4.0","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"468d525ff3d1aa2a3cf359eaf44ccecacfbe6f08","_id":"roadhog@0.4.0","_shasum":"4fc94f4bf6603ef4cd09b6555c9f2583eda15662","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"4fc94f4bf6603ef4cd09b6555c9f2583eda15662","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.4.0.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.4.0.tgz_1482986039780_0.8320444577839226"},"directories":{}},"0.4.1":{"name":"roadhog","version":"0.4.1","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"f19d0aec0c1b21fe4341ade7ee7f19ffc9a924ce","_id":"roadhog@0.4.1","_shasum":"fc835cb7b05ff1e37153f9b85506ffe5e2436b9d","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"fc835cb7b05ff1e37153f9b85506ffe5e2436b9d","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.4.1.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.4.1.tgz_1483262137206_0.23245650110766292"},"directories":{}},"0.4.2":{"name":"roadhog","version":"0.4.2","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"174fe5cd7cebdd73ff31bf9611ae6bdc52e42740","_id":"roadhog@0.4.2","_shasum":"49178f2a8ac015fe7a477e218e992685be4276d6","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"49178f2a8ac015fe7a477e218e992685be4276d6","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.4.2.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.4.2.tgz_1483262466508_0.8927170613314956"},"directories":{}},"0.4.3":{"name":"roadhog","version":"0.4.3","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["cli","react","roadhog","create-react-app"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","utils","scripts","config",".eslintrc"],"scripts":{"lint":"eslint --ext .js scripts config utils bin","test":"mocha test/**/*-test.js --no-timeouts","precommit":"npm run lint"},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-dva-hmr":"^0.2.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.16.0","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"eslint":"^3.12.1","expect":"^1.20.2","husky":"^0.11.9","mocha":"^3.2.0"},"gitHead":"e17ba14f6bf378eb8afad397f7560ac70df0ba26","_id":"roadhog@0.4.3","_shasum":"4c78475ccaccfc6603001d185f7b5d15d0ed638d","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"4c78475ccaccfc6603001d185f7b5d15d0ed638d","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.4.3.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.4.3.tgz_1483353081063_0.30577882449142635"},"directories":{}},"0.5.0":{"name":"roadhog","version":"0.5.0","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","system-bell-webpack-plugin":"^1.0.0","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^6.1.2","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^2.2.3","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","husky":"^0.11.9","nyc":"^10.0.0","postcss-pxtorem":"^3.3.1","rimraf":"^2.5.4"},"gitHead":"b787c499a29e9fda8d194492b23dca43446b4678","_id":"roadhog@0.5.0","_shasum":"a2ce97c5a36ab6acafb12be3849be1dcd5af166a","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"a2ce97c5a36ab6acafb12be3849be1dcd5af166a","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.5.0.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.5.0.tgz_1484138841173_0.6453930414281785"},"directories":{}},"0.5.1":{"name":"roadhog","version":"0.5.1","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","system-bell-webpack-plugin":"^1.0.0","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^6.1.2","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^2.2.3","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.11.9","nyc":"^10.0.0","postcss-pxtorem":"^3.3.1","rimraf":"^2.5.4"},"gitHead":"112a05fd44f2748a28bac91f1321b0fdf8cc41df","_id":"roadhog@0.5.1","_shasum":"560d9c741d9e8c84ac87b27665a0021daeef8861","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"560d9c741d9e8c84ac87b27665a0021daeef8861","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.5.1.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.5.1.tgz_1484200537627_0.6227259221486747"},"directories":{}},"0.5.2":{"name":"roadhog","version":"0.5.2","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","system-bell-webpack-plugin":"^1.0.0","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^6.1.2","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^2.2.3","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.11.9","nyc":"^10.0.0","postcss-pxtorem":"^3.3.1","rimraf":"^2.5.4"},"gitHead":"cd38f0b087adee3ab1e4e3dca7e05322ea9fa72e","_id":"roadhog@0.5.2","_shasum":"d13d9411e9a9ab2c20c36ce9437eb0d75eca2d5c","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"d13d9411e9a9ab2c20c36ce9437eb0d75eca2d5c","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.5.2.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.5.2.tgz_1484291734999_0.7108126138336957"},"directories":{}},"0.5.3":{"name":"roadhog","version":"0.5.3","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","system-bell-webpack-plugin":"^1.0.0","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^6.1.2","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^2.2.3","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.11.9","nyc":"^10.0.0","postcss-pxtorem":"^3.3.1","rimraf":"^2.5.4"},"gitHead":"b32673e6a959163ec15c2743950306cf62397141","_id":"roadhog@0.5.3","_shasum":"4083c30c2fe29cca7e8bdf3e0114929f91e36b87","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"valleykid","email":"valleykiddy@gmail.com"},"dist":{"shasum":"4083c30c2fe29cca7e8bdf3e0114929f91e36b87","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.5.3.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"valleykid","email":"valleykiddy@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.5.3.tgz_1485143939241_0.7040031051728874"},"directories":{}},"0.6.0-beta1":{"name":"roadhog","version":"0.6.0-beta1","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","awesome-typescript-loader":"^3.0.0-beta.18","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","svg-sprite-loader":"^0.3.0","system-bell-webpack-plugin":"^1.0.0","typescript":"^2.1.5","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^6.1.2","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^2.2.3","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.11.9","nyc":"^10.0.0","postcss-pxtorem":"^3.3.1","rimraf":"^2.5.4"},"gitHead":"b3eaad875b80421dec54a75081627d2bed83566a","_id":"roadhog@0.6.0-beta1","_shasum":"e68b3858a1e6425cabe1fb2488296ca2030a5900","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"e68b3858a1e6425cabe1fb2488296ca2030a5900","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.6.0-beta1.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"valleykid","email":"valleykiddy@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.6.0-beta1.tgz_1487897490011_0.7988682319410145"},"directories":{}},"0.6.0-beta2":{"name":"roadhog","version":"0.6.0-beta2","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.3.4","autoprefixer":"^6.5.4","awesome-typescript-loader":"^3.0.0-beta.18","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.26.1","detect-port":"^1.0.7","explain-error":"^1.0.3","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.9.0","filesize":"^3.3.0","fs-extra":"^1.0.0","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.4.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.13.1","svg-sprite-loader":"^0.3.0","system-bell-webpack-plugin":"^1.0.0","typescript":"^2.1.5","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^6.5.0"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^6.1.2","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^13.0.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^2.2.3","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.11.9","nyc":"^10.0.0","postcss-pxtorem":"^3.3.1","rimraf":"^2.5.4"},"gitHead":"05c99afd2f0b482d29251e0bfbd554325af8220e","_id":"roadhog@0.6.0-beta2","_shasum":"b9c0558b14b1049139025694897a64a00d0d9f94","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"b9c0558b14b1049139025694897a64a00d0d9f94","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.6.0-beta2.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"valleykid","email":"valleykiddy@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.6.0-beta2.tgz_1489623642229_0.87685412238352"},"directories":{}},"0.6.0-beta.3":{"name":"roadhog","version":"0.6.0-beta.3","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.4.3","autoprefixer":"^6.5.4","awesome-typescript-loader":"^3.0.0-beta.18","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","body-parser":"^1.17.1","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.27.3","detect-port":"^1.0.7","explain-error":"^1.0.3","express-http-proxy":"^0.11.0","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.10.1","filesize":"^3.3.0","fs-extra":"^2.1.2","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","lodash.pullall":"^4.2.0","lodash.uniq":"^4.5.0","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.5.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.16.1","svg-sprite-loader":"^0.3.0","system-bell-webpack-plugin":"^1.0.0","typescript":"^2.2.2","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^7.0.2"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^7.2.1","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^14.1.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^4.0.0","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.13.3","nyc":"^10.2.0","postcss-pxtorem":"^4.0.0","rimraf":"^2.5.4"},"gitHead":"0a83c344d90bfbd0c1bea38686c6baadcacd43b2","_id":"roadhog@0.6.0-beta.3","_shasum":"9ff589243e664ce5650d9bc18ce76f857d21f677","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"9ff589243e664ce5650d9bc18ce76f857d21f677","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.6.0-beta.3.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"valleykid","email":"valleykiddy@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/roadhog-0.6.0-beta.3.tgz_1491809613148_0.28825201420113444"},"directories":{}},"0.6.0-beta.4":{"name":"roadhog","version":"0.6.0-beta.4","description":"Cli tool for serve and build react app, based on create-react-app, support JSON pattern config.","bin":{"roadhog":"./bin/roadhog.js"},"keywords":["roadhog","react","cli","create-react-app","webpack"],"authors":["chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"],"license":"MIT","bugs":{"url":"https://github.com/sorrycc/roadhog/issues"},"files":["bin","src","lib"],"scripts":{"build":"rimraf lib && babel src --out-dir lib","lint":"eslint --ext .js src","test":"npm run lint && npm run build && cross-env NODE_ENV=test nyc mocha --no-timeouts test/**/*-test.js","debug":"cross-env NODE_ENV=test mocha --require babel-register --no-timeouts test/**/*-test.js","report":"nyc report --reporter=html","coveralls":"nyc report --reporter=text-lcov | coveralls","precommit":"npm run lint"},"nyc":{"include":["src/**/*.js"],"require":["babel-register"],"sourceMap":true,"instrument":false},"dependencies":{"atool-monitor":"^0.4.3","autoprefixer":"^6.5.4","awesome-typescript-loader":"^3.0.0-beta.18","babel-core":"^6.20.0","babel-loader":"^6.2.9","babel-plugin-add-module-exports":"^0.2.1","babel-plugin-react-require":"^3.0.0","babel-polyfill":"^6.20.0","babel-preset-es2015":"^6.18.0","babel-preset-react":"^6.11.1","babel-preset-stage-0":"^6.16.0","babel-register":"^6.18.0","body-parser":"^1.17.1","case-sensitive-paths-webpack-plugin":"^1.1.4","chalk":"^1.1.3","chokidar":"^1.6.1","connect-history-api-fallback":"^1.3.0","copy-webpack-plugin":"^4.0.1","cross-spawn":"^5.0.1","css-loader":"^0.27.3","detect-port":"^1.0.7","explain-error":"^1.0.3","express-http-proxy":"^0.11.0","extract-text-webpack-plugin":"^1.0.1","file-loader":"^0.10.1","filesize":"^3.3.0","fs-extra":"^2.1.2","glob":"^7.1.1","gzip-size":"^3.0.0","http-proxy-middleware":"^0.17.3","is-plain-object":"^2.0.1","istanbul":"^0.4.5","json-loader":"^0.5.4","less":"^2.7.1","less-loader":"^2.2.3","lodash.pullall":"^4.2.0","lodash.uniq":"^4.5.0","mocha":"^3.2.0","parse-json-pretty":"^0.1.0","postcss":"^5.2.6","postcss-loader":"^1.2.0","react-dev-utils":"^0.5.2","recursive-readdir":"^2.1.0","strip-ansi":"^3.0.1","strip-json-comments":"^2.0.1","style-loader":"^0.16.1","svg-sprite-loader":"^0.3.0","system-bell-webpack-plugin":"^1.0.0","typescript":"^2.2.2","url-loader":"^0.5.7","webpack":"^1.14.0","webpack-dev-server":"^1.16.2","webpack-visualizer-plugin":"^0.1.6","yargs":"^7.0.2"},"devDependencies":{"babel-cli":"^6.14.0","babel-eslint":"^7.2.1","cross-env":"^3.1.4","eslint":"^3.12.2","eslint-config-airbnb":"^14.1.0","eslint-plugin-import":"^2.2.0","eslint-plugin-jsx-a11y":"^4.0.0","eslint-plugin-react":"^6.8.0","expect":"^1.20.2","got":"^6.7.1","husky":"^0.13.3","nyc":"^10.2.0","postcss-pxtorem":"^4.0.0","rimraf":"^2.5.4"},"gitHead":"8ef46d0d254ab531ffbbc09fb94f6cf2033a6c31","_id":"roadhog@0.6.0-beta.4","_shasum":"fa4b4fc3e682d65248904086e8e8aa13da7cd4a6","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.5.0","_npmUser":{"name":"sorrycc","email":"sorrycc@gmail.com"},"dist":{"shasum":"fa4b4fc3e682d65248904086e8e8aa13da7cd4a6","tarball":"http://nexus.dui88.com:8081/nexus/content/groups/npm-all/roadhog/-/roadhog-0.6.0-beta.4.tgz"},"maintainers":[{"name":"sorrycc","email":"sorrycc@gmail.com"},{"name":"valleykid","email":"valleykiddy@gmail.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/roadhog-0.6.0-beta.4.tgz_1492743723264_0.3765515494160354"},"directories":{}}},"name":"roadhog","time":{"modified":"2017-04-21T03:02:05.205Z","created":"2016-06-23T13:26:04.346Z","0.0.1-alpha":"2016-06-23T13:26:04.346Z","0.1.0":"2016-12-15T09:03:26.831Z","0.2.0":"2016-12-16T03:49:14.281Z","0.2.1":"2016-12-16T04:01:28.035Z","0.2.2":"2016-12-20T12:40:30.449Z","0.2.3":"2016-12-21T10:04:49.132Z","0.3.0":"2016-12-22T08:14:23.091Z","0.3.1":"2016-12-23T06:45:51.743Z","0.3.2":"2016-12-24T22:49:11.293Z","0.4.0":"2016-12-29T04:34:01.509Z","0.4.1":"2017-01-01T09:15:39.068Z","0.4.2":"2017-01-01T09:21:06.746Z","0.4.3":"2017-01-02T10:31:21.297Z","0.5.0":"2017-01-11T12:47:21.394Z","0.5.1":"2017-01-12T05:55:39.683Z","0.5.2":"2017-01-13T07:15:37.065Z","0.5.3":"2017-01-23T03:58:59.484Z","0.6.0-beta1":"2017-02-24T00:51:30.282Z","0.6.0-beta2":"2017-03-16T00:20:42.505Z","0.6.0-beta.3":"2017-04-10T07:33:33.410Z","0.6.0-beta.4":"2017-04-21T03:02:05.205Z"},"readmeFilename":"README.md"}