Not working yet =)
This is a mock server written in Go.
The main goal is to make an all-in-one mock server for Web developers and testers which is easy to configure, use and with high throughput.
- It provides an admin API via REST and GRPC.
- It runs one or several mock servers on one instance.
- Mock servers can be created manually or using config files.
- Mock server configuration can be exported and imported (own format).
- It supports the most common protocols:
- HTTP (REST, GraphQL, WebSockets)
- GRPC
- Thrift
- TCP/UDP
- You can add expectations for each route/rpc based on input values.
- You can customize response of each route/rpc using:
- fixed values
- random values
- values from imported lists
- The server logs all the requests and responses. It keeps the most recent values in storage and prints all of them to STDOUT.
- Configs can be provisioned at server start up, and they will be validated and applied. In case of errors or conflicts during start up the server shall exit with non-zero code.
- It supports only own format of configuration files. But it also provides tools (cli or generators) to create config files by converting some common API specification formats: OpenAPI, proto, thrift.
- It collects metrics of server work-load and received requests, and it provides them in Prometheus format.
- The server may use in-memory database or Redis to run as a multi-instance service in cloud.
- The server shall be distributed as docker image and binaries.
- ngrok - make mock servers publicly available via ngrok reverse-proxy.