All Projects → Mermade → Openapi Gui

Mermade / Openapi Gui

Licence: mit
GUI / visual editor for creating and editing OpenAPI / Swagger definitions

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Openapi Gui

Kaizen Openapi Editor
Eclipse Editor for the Swagger-OpenAPI Description Language
Stars: ✭ 97 (-89.11%)
Mutual labels:  swagger, openapi, openapi3, editor
Safrs
SqlAlchemy Flask-Restful Swagger Json:API OpenAPI
Stars: ✭ 255 (-71.38%)
Mutual labels:  swagger, openapi, openapi3
Generator Express No Stress
🚂 A Yeoman generator for Express.js based 12-factor apps and apis
Stars: ✭ 534 (-40.07%)
Mutual labels:  swagger, openapi, openapi3
Apispec
A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification)..
Stars: ✭ 831 (-6.73%)
Mutual labels:  swagger, openapi, openapi3
Create Openapi Repo
🤖 Generator for GH repo to help you manage the OpenAPI definition lifecycle
Stars: ✭ 513 (-42.42%)
Mutual labels:  swagger, openapi, openapi3
Swagger Parser
Swagger Spec to Java POJOs
Stars: ✭ 468 (-47.47%)
Mutual labels:  swagger, openapi, openapi3
Studio
The modern editor for API Design and Technical Writing.
Stars: ✭ 459 (-48.48%)
Mutual labels:  swagger, openapi, openapi3
openapi-schema-validator
OpenAPI schema validator for Python
Stars: ✭ 35 (-96.07%)
Mutual labels:  swagger, openapi, openapi3
Dredd
Language-agnostic HTTP API Testing Tool
Stars: ✭ 3,770 (+323.12%)
Mutual labels:  swagger, openapi, openapi3
Full Stack Fastapi Postgresql
Full stack, modern web application generator. Using FastAPI, PostgreSQL as database, Docker, automatic HTTPS and more.
Stars: ✭ 7,635 (+756.9%)
Mutual labels:  swagger, openapi, openapi3
Swagger Ui
Swagger UI is a collection of HTML, JavaScript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.
Stars: ✭ 21,279 (+2288.22%)
Mutual labels:  swagger, openapi, openapi3
Awesome Openapi3
😎 A list of awesome projects related to OpenAPI 3.0.x, curated by the community
Stars: ✭ 469 (-47.36%)
Mutual labels:  swagger, openapi, openapi3
openapi-schemas
JSON Schemas for every version of the OpenAPI Specification
Stars: ✭ 22 (-97.53%)
Mutual labels:  swagger, openapi, openapi3
Oas Kit
Convert Swagger 2.0 definitions to OpenAPI 3.0 and resolve/validate/lint
Stars: ✭ 516 (-42.09%)
Mutual labels:  swagger, openapi, openapi3
fastify-openapi-glue
A plugin for Fastify to autogenerate a configuration based on a OpenApi(v2/v3) specification.
Stars: ✭ 94 (-89.45%)
Mutual labels:  swagger, openapi, openapi3
Openapi.tools
A collection of Editors, Linters, Parsers, Code Generators, Documentation, Testing
Stars: ✭ 257 (-71.16%)
Mutual labels:  swagger, openapi, openapi3
Schemathesis
A modern API testing tool for web applications built with Open API and GraphQL specifications.
Stars: ✭ 768 (-13.8%)
Mutual labels:  swagger, openapi, openapi3
Full Stack Fastapi Couchbase
Full stack, modern web application generator. Using FastAPI, Couchbase as database, Docker, automatic HTTPS and more.
Stars: ✭ 243 (-72.73%)
Mutual labels:  swagger, openapi, openapi3
shipengine-openapi
The official OpenAPI 3.0 definitions for ShipEngine™
Stars: ✭ 13 (-98.54%)
Mutual labels:  swagger, openapi, openapi3
Generator Express No Stress Typescript
🚄 A Yeoman generator for Express.js based 12-factor apps and apis using Typescript
Stars: ✭ 297 (-66.67%)
Mutual labels:  swagger, openapi, openapi3

OpenAPI-GUI

OpenAPI-GUI is a GUI for creating and editing OpenAPI version 3.0.x JSON/YAML definitions. In its current form it is most useful as a tool for starting off and editing simple OpenAPI definitions. Imported OpenAPI 2.0 definitions are automatically converted to v3.0.

Screenshot

For the previous Swagger / OpenAPI 2.0-only version see here. That version is currently unmaintained apart from security fixes.

This project was initially a fork of Daryl Kuhn's IODoctor, which in turn was inspired by IODoctor by Brandon West which was written in Ruby. The complete history of the project is maintained on GitHub.

Description

How It Works

Select an existing OpenAPI 2.0 or 3.0.x definition to upload, or create a new definition and start adding Paths, Operations, and Parameters. When an existing definition is used, it is parsed and forms for editing each Path, Operation and Parameter will be created.

You can load an existing definition by appending a ?url= query parameter to the initial start page.

Click an item from the menu on the left to begin editing. View the JSON/YAML output at any time by selecting one of the "Export" tabs. When finished, download the output to save it locally or copy it your clipboard. OpenAPI-GUI only stores one definition at a time, and this is in your browser's local-storage. Make sure you save your JSON/YAML output locally.

Before performing a destructive action, OpenAPI-GUI saves the current state of the definition. At all other times you must remember to select Save manually.

Technology

OpenAPI-GUI runs entirely client-side using a number of Javascript frameworks including Vue.JS, jQuery and Bulma for CSS.

To get the app up and running just browse to the live version on GitHub pages, deploy a clone to GitHub pages, deploy to Heroku using the button below, or clone the repo and point a browser at index.html or host it yourself - couldn't be simpler. More technical information here.

You only need to npm install the Node.js modules if you wish to use the openapi-gui embedded web server (i.e. not if you are running your own web-server), otherwise they are only there for PaaS deployments.

Deploy

CLI options

-d, --definition    serve the given OAS definition
-l, --launch        start a web-browser pointing to the GUI
-p, --port          specify the port to run on, defaults to $PORT or 3000
-w, --write         enable writing back to the source definition

Running with Docker

If you don't have a local Node development environment, or if you would prefer to run OpenAPI-GUI in a Docker container, you can do in with a few simple steps:

  1. Clone the repository.
  2. Run docker build -t mermade/openapi-gui . to build the Docker image (mermade/openapi-gui)
  3. Run docker run --name openapi-gui -p 8080:3000 -d mermade/openapi-gui to run the server on port 8080.
  4. Navigate to http://localhost:8080 in your favorite browser.
  5. When you're done, shut down the server by running docker stop openapi-gui && docker rm openapi-gui

Or you can pull the pre-built Docker image:

  • docker pull mermade/openapi-gui

Limitations

  • OpenAPI-GUI will de-reference shared parameters.
  • The definition must be self-contained with no external $refs. This is likely to be resolved (ho-ho) soon.
  • Editing a response / example / body schema will dereference it.
  • OpenAPI-GUI will not always preserve vendor-extensions, e.g. if a parameter is deleted and recreated.
  • OpenAPI-GUI will not preserve comments from definitions imported in YAML format.

TODO

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].