The Ktor OpenAPI Generator is a library to automatically generate the descriptor as you route your ktor application.
Ktor OpenAPI Generator is:
Currently Supported:
@Response
)com.papsign.ktor.openapigen.content.type
, Binary Parser and default JSON parser (that uses the ktor implicit parsing/serializing)).throws(ex) {}
in the routes with an APIException object) with Status pages interop (with .withAPI in the StatusPages configuration).tag(tag) {}
in route with a tag object, currently must be an enum, but may be subject to change)@DiscriminatorAnnotation()
attribute and sealed classes Extra Features:
install(OpenAPIGen) { ... }
section)Take a look at a few examples
And others... (add your name above)
Step 1. Add the JitPack repository to your build file:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Step 2. Add the dependency:
dependencies {
implementation 'com.github.papsign:Ktor-OpenAPI-Generator:-SNAPSHOT'
}
Install the submodule:
git submodule add https://github.com/papsign/Ktor-OpenAPI-Generator.git openapigen
Declare the folder in settings.gradle:
...
include 'openapigen'
Declare the dependency in the main build.gradle
apply plugin: 'kotlin'
...
dependencies {
compile project(":openapigen")
...
}