Skip to content

OpenAPI Extender that will help you to move faster with your API documentation.

License

Notifications You must be signed in to change notification settings

rodnansol/openapi-extender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenAPI Extender

Motivation

Writing proper OpenAPI documentations are time-consuming, if you really want to make sure your clients are understanding the API itself, massive amount of summaries and examples should be provided, not mandatory, but if you are on the other side of the API, you might be also happier if an API documentation is verbose as possible.

Goals

The goal of this project to make sure that your OpenAPI documentation is having enough extra details, that you might not want to write by yourself in the documentation, but you would like to use other, earlier written resources to fulfil these requirements/needs/gaps in your documentation.

Developers are writing unit and integration tests on their projects, and a good test could be providing the different input and output values for a component. API developers are writing tons of integration tests for the different use cases and it happens sometimes that they are not giving out these tests, because of course security and privacy rules, but some output of these tests could be used to extend the already existing API.

Alternatives

Implementation

The project is split up into multiple modules to make sure the end users are not depending on some unnecessary dependencies:

  • openapi-extender - Core part, that does the ``heavy-lifting'' that works with the OpenAPI model classes

  • openapi-extender-resource-generator - Resource generator module that is generating the resource files based on different content

  • openapi-extender-spring-test - Spring Test extension

  • openapi-extender-springdoc - SpringDoc extension

Usage

Please check the following documentation sections for your requested features