Github url

easy-mock

by easy-mock

easy-mock /easy-mock

A persistent service that generates mock data quickly and provids visualization view.

7.9K Stars 1.1K Forks Last release: about 2 years ago (v1.6.0) GNU General Public License v3.0 136 Commits 12 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Node.js VersionMongoDB VersionRedis VersionBuild StatusCoverage Statusjs-standard-styleLicenseChat

Thanks to Souche Inc. which provides the server to hold an online service.

Souche Inc.

Links

Introduction

If you're unable to deploy an Easy Mock service by yourself, theonline service is recommended.

Easy Mock is a persistent service that generates mock data quickly and provids visualization view.

Features

  • Support API proxying
  • Convenient shortcuts
  • Support Collaborative editing
  • Support team project
  • Support RESTful
  • Support Swagger | OpenAPI Specification (1.2 & 2.0 & 3.0)
    • Create project quickly based on Swagger
    • Support displaying parameters and the return value
    • Support displaying class model
  • More flexible and extensible in response data
  • Support for custom response configuration (example: status/headers/cookies)
  • Use Mock.js schema
  • Support restc to preview API

Quick Start

Before starting, we assume that you're already have installedNode.js (v8.x, v10.x is not supported) & MongoDB (>= v3.4) & Redis>= v4.0).

Installation

$ git clone https://github.com/easy-mock/easy-mock.git $ cd easy-mock && npm install

Configuration

Find config/default.json or create config/local.json to overwrite some configuration.

Easy Mock will load different configuration files according to your environment. Reference to node-configto get more information because Easy Mock uses node-config as its configuration module.

{ "port": 7300, "host": "0.0.0.0", "pageSize": 30, "proxy": false, "db": "mongodb://localhost/easy-mock", "unsplashClientId": "", "redis": { "keyPrefix": "[Easy Mock]", "port": 6379, "host": "localhost", "password": "", "db": 0 }, "blackList": { "projects": [], // projectId, e.g."5a4495e16ef711102113e500" "ips": [] // ip, e.g. "127.0.0.1" }, "rateLimit": { // https://github.com/koajs/ratelimit "max": 1000, "duration": 1000 }, "jwt": { "expire": "14 days", "secret": "shared-secret" }, "upload": { "types": [".jpg", ".jpeg", ".png", ".gif", ".json", ".yml", ".yaml"], "size": 5242880, "dir": "../public/upload", "expire": { "types": [".json", ".yml", ".yaml"], "day": -1 } }, "ldap": { "server": "", // Set server to enable LDAP login. e.g. "ldap://localhost:389" or "ldaps://localhost:389"(use SSL) "bindDN": "", // Username,e.g. "cn=admin,dc=example,dc=com" "password": "", "filter": { "base": "", // Base where we can search for users,e.g. "dc=example,dc=com" "attributeName": "" // e.g. "mail" or "email" etc. } }, "fe": { "copyright": "", "storageNamespace": "easy-mock\_", "timeout": 25000, "publicPath": "/dist/" } }

Note:

  • The default value of
    publicPath
    is
    '/dist/'
    . You can replace it to your own CDN if necessary.
  • If you changed some configuration of
    fe
    , you should run
    build
    command to adapt that changes.

Background:

Easy Mock supports two background service,Unsplash and Bing.

If you leave

unsplashClientId

blank, the background will be provided by Bing.

Launch

$ npm run dev # Visit http://127.0.0.1:7300

More Commands

# Build front-end assets $ npm run build # Run Easy Mock as production environment (You should run `build` first) $ npm run start # Run unit test $ npm run test # Test lint $ npm run lint

Deployment

Please configure your configuration files before this step.

PM2

We're recommending you to use PM2 as your daemon process.

Install PM2 Globally

$ [sudo] npm install pm2 -g

Launch via PM2

You should run

build

before this step.

$ NODE\_ENV=production pm2 start app.js

Releases

Refer to Release and you'll get all the releases and theirs changelog.

Contributing

Easy Mock is now maintained byMobi-Architecture team of Souche Inc. If you have any question about this project, you're welcome to postIssues or make somePull Requests. Before contributing, we think you'd better read thecontributing guide.

Real-Time Feedback

You may make some real-time feedback via QQ group.

QQ is the most popular IM software in China and you can get it downloaded via http://en.qq.com/.

The QQ group number is 595325417, and here's the QR code of the group:

Who Deployed Easy Mock

If you deployed Easy Mock in your own server, please tell us

Core Contributors

|
chuangker
|
XadillaX
|
ostoc
|
xinyu198736
|

License

GPL-3.0

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.