Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/ltmenezes/fences

Fences is an LLM augmented OpenAPI interpreter with a visual interface to easily make requests
https://github.com/ltmenezes/fences

backend openapi swagger swagger-ui tools

Last synced: 9 days ago
JSON representation

Fences is an LLM augmented OpenAPI interpreter with a visual interface to easily make requests

Awesome Lists containing this project

README

        

# Fences

Package version

An LLM augmented OpenAPI specification interpreter that provides a human-readable interactive representation of APIs, automatically generate requests and stores both requests and responses on your browser to improve AI-generated requests in future queries.

Fences operates similarly to SwaggerUI, but with a more human-friendly interface. It uses AI to create a visual diagram and categorize endpoints. After the initial parse Fences uses the OpenAPI specification to automatically generate request bodys for you, filling with it with sample data. It stores every single request and response data in your browser to better generate future requests. Data is only stored locally, the only third-party server it uses is Anthropic's API to access LLMs.

![alt text](documentation/home.png)

# Work in progress
Fences is still under construction and may break for some edge cases.
Please submit an issue with a reproducible example if you encounter any problems.

# Usage
```sh
pip install fences-api # Installation command
fences # You will be prompted for an anthropic api key and for the link to the openapi spec
```

You will be prompted to enter your anthropic key so that fences can make requests to an LLM model to parse the OpenAPI specification.

# How to contribute
PR's are welcome!

Please create an issue before opening a PR so that we can discuss the changes you want to make.

# How to setup your dev enviroment

```sh
pip install -r requirements.txt
cd ui && npm install && npm run build && cd..
python fences/cli.py
pip install -e . # To test package locally
```