https://github.com/n0th1ng-else/hummock
Caching responses from real api and use it as the stubbed data
https://github.com/n0th1ng-else/hummock
mock proxy record stubb stubbed-data talkback
Last synced: 8 months ago
JSON representation
Caching responses from real api and use it as the stubbed data
- Host: GitHub
- URL: https://github.com/n0th1ng-else/hummock
- Owner: n0th1ng-else
- License: mit
- Created: 2020-03-27T06:37:35.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T17:23:00.000Z (over 3 years ago)
- Last Synced: 2025-08-26T19:21:48.794Z (10 months ago)
- Topics: mock, proxy, record, stubb, stubbed-data, talkback
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/hummock
- Size: 971 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# hummock
Caching responses from real api and use it as the stubbed data.
This is a **standalone GUI application** which runs PROXY servers for every host
you provide in the config file. (see the Usage section)
Powered by [Talkback](https://www.npmjs.com/package/talkback).
For those who want to use recording features
when test own applications, **please use talkback directly**.
Rendered by [Angular](https://angular.io/) [Material](https://material.angular.io/)
# Usage
create `hummock.json` file in the root with content as listed below.
Humock sets the port for each listener automatically, but you can specify it by yourself.
```json
{
"recordFrom": [
{
"host": "https://some-host.com"
},
{
"host": "http://another-host-example-with-custom-port-for-listener.com",
"port": 8001
}
]
}
```
run `npm start` and visit `http://localhost:3000`. If you have port 3000 busy, you can run `PORT=3001 npm start` where 3001 is any of your free ports.
Hummock will start and you would be able to access new entrypoint on localhost: `localhost:6000` and `localhost:8001` (considering the config above)
[Config schema](https://github.com/n0th1ng-else/hummock/blob/master/hummock.json.schema) is located in the project root
# Config options
| Option | Required | Default | Description |
| ---------- | -------- | ------- | ------------------------------------------------- |
| autostart | no | `false` | Tells hummon to start proxies when app launches |
| gui | no | `true` | Turn web ui on/off |
| recordFrom | yes | `[]` | Servers that should be proxied (in form of above) |
# Custom config location
By default, hummock looks for config file in the root folder.
You can specify own config path simply running
```bash
npm start -- --config /path/to/config/hummock.json
```
# Credits
Many thanks go to Ignacio Piantanida, who developed a brilliant package
[Talkback](https://www.npmjs.com/package/talkback). Hummock is just a wrapper on top of it which allows to run multiple talkback instances and
modify snapshot on the fly in browser window. The initial idea was to
implement the same as talkback does, so it easily covered most of cases.