cabal-version: 3.0
name: servant-openapi3
version: 2.1.0.0
synopsis: Generate a Swagger/OpenAPI/OAS 3.0 specification for your servant API.
description:
Swagger is a project used to describe and document RESTful APIs. The core of the
project is the [OpenAPI Specification (OAS)](https://swagger.io/docs/specification/about/).
This library implements v3.0 of the spec. Unlike Servant it is language-agnostic and thus is
quite popular among developers in different languages. It has also existed for a longer time
and has more helpful tooling.
.
This package provides means to generate a Swagger/OAS specification for a Servant API
and also to partially test whether an API conforms with its specification.
.
Generated Swagger specification then can be used for many things such as
.
* displaying interactive documentation using [Swagger UI](http://swagger.io/swagger-ui/);
.
* generating clients and servers in many languages using [Swagger Codegen](http://swagger.io/swagger-codegen/);
.
* and [many others](http://swagger.io/open-source-integrations/).
homepage: https://github.com/haskell-servant/servant
bug-reports: https://github.com/haskell-servant/servant/issues
license: BSD-3-Clause
license-file: LICENSE
author: David Johnson, Nickolay Kudasov, Maxim Koltsov
maintainer: Laurent P. Rene de Cotret
copyright: (c) 2015-2020, Servant contributors
(c) 2020-2025 Maxim Koltsov
(c) 2026 Servant contributors
category: Web, Servant, Swagger
build-type: Simple
tested-with: GHC ==9.2.8 || ==9.4.8 || ==9.6.6 || ==9.8.4 || ==9.10.1 || ==9.12.1
extra-source-files:
README.md
, example/server/*.hs
, example/src/*.hs
, example/test/*.hs
, example/*.cabal
, example/swagger.json
, example/LICENSE
extra-doc-files:
CHANGELOG.md
, example/src/*.hs
, example/test/*.hs
source-repository head
type: git
location: https://github.com/haskell-servant/servant.git
subdir: servant-openapi3
library
ghc-options: -Wall -Wunused-packages
exposed-modules:
Servant.OpenApi
Servant.OpenApi.Test
Servant.OpenApi.TypeLevel
-- Internal modules
Servant.OpenApi.Internal
Servant.OpenApi.Internal.Orphans
Servant.OpenApi.Internal.Test
Servant.OpenApi.Internal.TypeLevel
Servant.OpenApi.Internal.TypeLevel.API
Servant.OpenApi.Internal.TypeLevel.Every
Servant.OpenApi.Internal.TypeLevel.TMap
hs-source-dirs: src
build-depends: aeson >=2.2 && <2.4
, aeson-pretty >=0.8.9 && <0.9
, base >=4.16.4 && <4.23
, base-compat >=0.12 && <0.15
, bytestring >=0.11 && <0.13
, http-media >=0.7.1.3 && <0.9
, lens >=5.3.6 && <5.4
, servant >=0.20.3 && <0.21
, servant-server >=0.20.3 && <0.21
, singleton-bool >=0.1.6 && <0.2
, openapi3 >=3.2.5 && <3.3
, text >=1.2.5.0 && <3
, hspec >=2.11 && <2.12
, QuickCheck >=2.18 && <2.19
default-language: Haskell2010
test-suite spec
ghc-options: -Wall -Wunused-packages
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: Spec.hs
build-tool-depends: hspec-discover:hspec-discover >=2.11 && <2.12
build-depends: base
, aeson
, hspec
, lens
, servant
, servant-openapi3
, openapi3
, text
, time
other-modules:
Servant.OpenApiSpec
default-language: Haskell2010