An open API service indexing awesome lists of open source software.

https://github.com/macacajs/macaca-datahub

Continuous data provider for development, testing, staging and production. Just enjoy the data out-of-the-box.πŸ“¦
https://github.com/macacajs/macaca-datahub

datahub environment macaca mock

Last synced: 8 months ago
JSON representation

Continuous data provider for development, testing, staging and production. Just enjoy the data out-of-the-box.πŸ“¦

Awesome Lists containing this project

README

          



Macaca

# Macaca DataHub

[δΈ­ζ–‡η‰ˆ](./README.zh.md) | [Offical Site](//macacajs.github.io/macaca-datahub)

---

[![NPM version][npm-image]][npm-url]
[![Package quality][quality-image]][quality-url]
[![CI][ci-image]][ci-url]
[![Test coverage][codecov-image]][codecov-url]
[![node version][node-image]][node-url]
[![npm download][download-image]][download-url]
[![docker pull][docker-pull-image]][docker-url]

[npm-image]: https://img.shields.io/npm/v/macaca-datahub.svg?logo=npm
[npm-url]: https://npmjs.org/package/macaca-datahub
[ci-image]: https://github.com/macacajs/macaca-datahub/actions/workflows/ci.yml/badge.svg
[ci-url]: https://github.com/macacajs/macaca-datahub/actions/workflows/ci.yml
[quality-image]: https://packagequality.com/shield/macaca-datahub.svg
[quality-url]: https://packagequality.com/#?package=macaca-datahub
[codecov-image]: https://img.shields.io/codecov/c/github/macacajs/macaca-datahub.svg?logo=codecov
[codecov-url]: https://codecov.io/gh/macacajs/macaca-datahub
[node-image]: https://img.shields.io/badge/node.js-%3E=_12-green.svg?logo=node.js
[node-url]: http://nodejs.org/download/
[download-image]: https://img.shields.io/npm/dm/macaca-datahub.svg?logo=npm
[download-url]: https://npmjs.org/package/macaca-datahub
[docker-pull-image]: https://img.shields.io/docker/pulls/macacajs/macaca-datahub.svg?logo=docker
[docker-url]: https://hub.docker.com/r/macacajs/macaca-datahub/

> Continuous data provider for development, testing, staging and production.

## Introduction

Macaca DataHub is a continuous data provider for development, testing, staging and production.

### A Comprehensive Solution

DataHub is born to solving the lifecycle needs of mock/testing data of software development, from development, testing, staging to final production. Software engineers and test engineers use DataHub to manage their mock/testing data.



### Decentralization

DataHub is flexible with how and where mock/testing data is stored.

You can use a local instance of Datahub on your local machine to manage your local testing/mock data during development. The mock/testing data is in plain text. It can be versioned and archived with any version control software, together with your project files.

In addition, the local mock/testing data can be pushed and synchronized to a remote Datahub server to meet the needs of data sharing and collaboration.



### Data Flow Management

DataHub adopts the principle of unidirectional data flow to make sure you will always get the latest data.



### Consistency Between API Document and Mock Data

Datahub can also automatically generate an API document from your mock/testing data, to help keep your API document up to date and consistent with your mock data.



### Dashboard

DataHub adopts multi-scenario design, can group data according to the scene name, and provide scene data addition, deletion, and change, and can operate through DataHub's panel interface.

DataHub provides a dashboard for you to manage your data. You can group data by scene, or by stage such as development, testing, or staging. Datahub provides standard CRUD funtions.

Datahub use [path-to-regexp](https://github.com/pillarjs/path-to-regexp) for dynamic path matching.

API name example:

| DataHub API name | matched request path |
| ---------------- | -------------------- |
| api1/books | api1/books |
| api2/:foo/:bar | api2/group/project |
| api3/:id | api3/fred |
| api3/:id | api3/baz |



### Save Snapshot

DataHub can save the response of each request by taking snapshot. You can use the archieved snapshot to find out what happened.



### Automation Testing

Through the seamless integration of the [switchScene(scenario) API](https://macacajs.github.io/macaca-wd/#switchScene) in test cases, higher test coverage can be achieved.







## Contributors

|[
xudafeng](https://github.com/xudafeng)
|[
zhangyuheng](https://github.com/zhangyuheng)
|[
zivyangll](https://github.com/zivyangll)
|[
snapre](https://github.com/snapre)
|[
brucejcw](https://github.com/brucejcw)
|[
Chan-Chun](https://github.com/Chan-Chun)
|
| :---: | :---: | :---: | :---: | :---: | :---: |
|[
BernardTolosajr](https://github.com/BernardTolosajr)
|[
zhuyali](https://github.com/zhuyali)
|[
paradite](https://github.com/paradite)
|[
atian25](https://github.com/atian25)
|[
timeLorder](https://github.com/timeLorder)
|[
vagusX](https://github.com/vagusX)
|
[
gaius-qi](https://github.com/gaius-qi)
|[
yesmeck](https://github.com/yesmeck)
|[
ed2nd](https://github.com/ed2nd)
|[
fengmk2](https://github.com/fengmk2)
|[
nightink](https://github.com/nightink)

This project follows the git-contributor [spec](https://github.com/xudafeng/git-contributor), auto updated at `Thu Apr 21 2022 10:01:16 GMT+0800`.

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=macacajs/macaca-datahub)](https://star-history.com/#macacajs/macaca-datahub)

## License

The MIT License (MIT)