Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/cubahno/connexions

Combine multiple APIs with meaningful responses, configurable latency and error codes.
https://github.com/cubahno/connexions

api api-first api-rest golang microservices mocking openapi postman swagger web-ui

Last synced: 3 months ago
JSON representation

Combine multiple APIs with meaningful responses, configurable latency and error codes.

Awesome Lists containing this project

README

        



## Connexions

[![CI](https://github.com/cubahno/connexions/workflows/CI/badge.svg?event=push)](https://github.com/cubahno/connexions/actions/workflows/ci.yml?query=event%3Apush+branch%3Amaster+workflow%3ACI)
[![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fcubahno%2F4110782af3ec09dd1ebabc3304756f1f%2Fraw%2Fcovbadge.json&labelColor=%23058FF3&color=%2306C53B)](https://github.com/cubahno/connexions/actions/workflows/ci.yml?query=event%3Apush+branch%3Amaster+workflow%3ACI)
[![GoReportCard](https://goreportcard.com/badge/github.com/cubahno/connexions)](https://goreportcard.com/report/github.com/cubahno/connexions)
[![GoDoc](https://godoc.org/github.com/cubahno/connexions?status.svg)](https://godoc.org/github.com/cubahno/connexions)
[![License](https://img.shields.io/github/license/cubahno/connexions)](https://github.com/cubahno/connexions/blob/master/LICENSE)

**Connexions** is a library originally inspired by [Connexion](https://github.com/spec-first/connexion).

Connexion allows you to set up a REST API with Swagger documentation and OAuth2 authentication with minimal effort.

Connexions takes this one step further by allowing you to define **multiple APIs** not limited to only Swagger and(or) OpenAPI.

You can define single response for any arbitrary path on the fly.

## Goals
- provide a simple tool to work with API mocks
- combine multiple APIs into one
- generate meaningful responses

## Features
- Using upstream services with circuit breaker
- Randomized response contents, allowing you to redefine the response for any path
- Modify response contents on the fly by providing custom function callbacks
- Mimic error responses and status codes
- Configurable latency in responses



## Simple start

```bash
docker run -it --rm \
-p 2200:2200 \
-v connexions:/app/resources/data \
cubahno/connexions api

```

Read full documentation at [cubahno.github.io/connexions](https://cubahno.github.io/connexions//).

[OpenAPI Specification](https://editor.swagger.io/?url=https://raw.githubusercontent.com/cubahno/connexions/master/resources/openapi.yml)

License
===================
Copyright (c) 2023-present

Licensed under the [MIT License](https://github.com/cubahno/connexions/blob/master/LICENSE)

===================

[OpenAPI Specification](https://www.openapis.org/)

[OpenAPI 3.0 Style Values](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#style-values)

[Operation Object](https://github.com/swagger-api/swagger-spec/blob/master/versions/2.0.md#operation-object)

[YAML format](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#format)