Negligent Parachute Maintainers

    qenya

    0.3.6 • Public • Published

    Qenya (昆雅)

    Qenya是一个轻量数据管理,api输出的Mock Server。基于koa2、graphql、mongodb(tingodb)。

    通常,前后端分离开发,前后端约定好接口后,分别各自开发,再一起联调。在后端接口还没有数据的时候,前端如何mock后端数据,就成了一个问题。

    使用过很多种方案,比如用json文件,mock.js,faker等等,每种方案都不是特别的让人满意。个人希望的一个Mock Server应该具有以下的特点。

    1. 无污染。无论是html还是js源码,都可以做到开发和线上代码完全相同。
    2. 可以生成随机数据,数据可以持久化,可以做单元测试。
    3. 可以处理数据间的关联。
    4. 配置简单,很少的配置就可以开工。
    5. 可以在多人协同开发下使用。

    所以就有了 Qenya 这个项目,通过以下几个方面来满足这些需求。

    1. 使用了 tingodb(超轻量文件数据库)或者 mongodb(可以多人协作开发)来持久化数据,可以比较完整的模拟CRUD的全部功能。
    2. 自动创建一个管理后台,通过图形化的方式来代替配置文件。
    3. 通过 graphql 来转换数据,处理数据关联等问题。

    安装

    首先安装nodejs,建议node 7.6 以上版本,创建一个目录,在命令行运行

    $ npm install qenya --save-dev
    

    使用

    最小化配置只需要配置两个服务启动的端口号。会默认使用tingodb作为数据库,存放地址为项目启动目录下的data文件夹

    const qenya = require('qenya')
    qenya({
      appPort: 5000,
      apiPort: 5001
    })
    

    完整文档见这里

    Keywords

    Install

    npm i qenya

    DownloadsWeekly Downloads

    16

    Version

    0.3.6

    License

    MIT

    Last publish

    Collaborators

    • lobos