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.π¦
- Host: GitHub
- URL: https://github.com/macacajs/macaca-datahub
- Owner: macacajs
- License: mit
- Created: 2017-11-23T14:28:42.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2025-01-27T08:50:34.000Z (12 months ago)
- Last Synced: 2025-04-13T16:50:26.528Z (9 months ago)
- Topics: datahub, environment, macaca, mock
- Language: JavaScript
- Homepage: https://macacajs.github.io/macaca-datahub
- Size: 15.1 MB
- Stars: 477
- Watchers: 27
- Forks: 55
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: HISTORY.md
- License: LICENSE
Awesome Lists containing this project
README
# 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
[](https://star-history.com/#macacajs/macaca-datahub)
## License
The MIT License (MIT)