# @nbugs/express-app-suite

`express-app-suite` 目标是成为一个快速搭建 node 端服务的框架，用于支持校园号应用、小虫官网、产品官网、内部系统的前端页面托管服务。

如果基于 `express` 来启动一个 node 服务，需要自己搭配模版引擎、日志输出框架、ORM 框架，并且要定义页面路由。
`express-app-suite` 在 `express` 的基础上封装了基本的功能，并且定义了自动路由。其次，`express-app-suite` 下的静态资源可以很方便地被部署到 CDN。

## 使用方法

```js
const suite = require('@nbugs/express-app-suite');

const app = suite.createApp({
  name: 'myAppName',
  env: 'dev',
  lookupAppInfo: {
    root: __dirname,
    path: 'wechat'
  },
  document: {
    path: '/app/document'
  }
})

// route here


// auto route
app.use(suite.lookupAuto{
  root: __dirname,
  path: '/',
})

// 404
app.get('*', function(req, res) {
  res.render('404.html')
})

app.listen(3000, () => {
  app.get('logger').info('the app startup');
})
```

* name - 应用的名称，可以取 `package.json` 中的名称，在日志记录时会有用
* env  - 应用的环境，在应用的很多地方，需要根据不同的环境来做不同的响应
* lookupAuto - 应用自动渲染 view 的目录
* lookupAppInfo - 应用自动查找 `appinfo.js` 文件，并且根据 `appinfo.js` 文件中定义的模版来渲染页面
* document - 配置前端文档系统的渲染路径

## Changelog

### v0.0.14

* 开发环境不在缓存 view 模版，修改即可生效

### v0.0.10 - v0.0.13

* 修复生产环境中 markdown 渲染不正确的 bug

### v0.0.9

* 集成文档开发预览

### v0.0.8

* 集成文档渲染

### v0.0.7

* article 和 markdown 会返回 title

### v0.0.6

* 增加 markdown 的支持
* 增加 article 的支持
* 修复调试时将预览和线上数据弄反的 bug
* 修复未发布时访问文档出现服务器异常的 bug

### v0.0.5
 
* 修复 mongodb 出错断开连接没有重连的问题