# go-swagger **Repository Path**: mirrors/go-swagger ## Basic Information - **Project Name**: go-swagger - **Description**: Swagger 2.0 implementation for go - **Primary Language**: Go - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2020-07-22 - **Last Updated**: 2025-11-15 ## Categories & Tags **Categories**: api-gateway **Tags**: None ## README # Swagger 2.0 [![Tests][test-badge]][test-url] [![Coverage][cov-badge]][cov-url] [![CI vuln scan][vuln-scan-badge]][vuln-scan-url] [![CodeQL][codeql-badge]][codeql-url] [![Release][release-badge]][release-url] [![Container Registry on Quay.io][quay-badge]][quay-url] [![Container Registry on Github][ghcr-badge]][ghcr-url] [![Go Report Card][gocard-badge]][gocard-url] [![CodeFactor Grade][codefactor-badge]][codefactor-url] [![License][license-badge]][license-url] [![Open SSF Scorecard][ossf-badge]][ossf-url] [![OpenSSF Best Practices][ossf-cci-badge]][ossf-cci-url] [![OSS licences status][fossa-badge]][fossa-url] [![Documentation][doc-badge]][doc-url] [![GoDoc][godoc-badge]][godoc-url] [![Slack Channel][slack-badge]][slack-url] [![go version][goversion-badge]][goversion-url] ![Top language][top-badge] ![Commits since latest release][commits-badge] --- This project contains a golang implementation of Swagger 2.0 (aka [OpenAPI 2.0](https://github.com/OAI/OpenAPI-Specification/blob/old-v3.2.0-dev/versions/2.0.md)). It provide tools to work with swagger specifications. [Swagger](https://swagger.io/) is a simple yet powerful representation of your RESTful API.
## Documentation ## Features `go-swagger` brings to the go community a complete suite of fully-featured, high-performance, API components to work with a Swagger API: server, client and data model. * Generates a server from a swagger specification * Generates a client from a swagger specification * Generates a CLI (command line tool) from a swagger specification (alpha stage) * Supports most features offered by jsonschema and swagger, including polymorphism * Generates a swagger specification from annotated go code * Additional tools to work with a swagger spec * Great customization features, with vendor extensions and customizable templates Our focus with code generation is to produce idiomatic, fast go code, which plays nice with golint, go vet etc. [More details](https://goswagger.io/go-swagger/features). ## Project status This project supports OpenAPI 2.0. **At this moment it does not support OpenAPI 3.x**. `go-swagger` is now feature complete and has stabilized its API. Most features and building blocks are now in a stable state, with a rich set of CI tests. The go-openapi community actively continues bringing fixes and enhancements to this code base. There is still much room for improvement: contributors and PR's are welcome. You may also get in touch with maintainers on [our slack channel](https://slackin.goswagger.io). ## Installing ```sh go install github.com/go-swagger/go-swagger/cmd/swagger@latest ``` `go-swagger` is also available as binary or docker releases as well as from source: [more details](https://goswagger.io/go-swagger/install). ## Try it Try `go-swagger` in a free online workspace using Gitpod: [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io#https://github.com/go-swagger/go-swagger) ## Licensing The toolkit itself is licensed under an Apache Software License 2.0: [SPDX-License-Identifier: Apache-2.0](./LICENSE). Just like swagger, this does not cover code generated by the toolkit. That code is entirely yours to license however you see fit. ### Licence scan on dependencies [![FOSSA Status][fossa-badge-large]][fossa-url-large] [test-badge]: https://github.com/go-swagger/go-swagger/actions/workflows/test.yaml/badge.svg [test-url]: https://github.com/go-swagger/go-swagger/actions/workflows/test.yaml [cov-badge]: https://codecov.io/gh/go-swagger/go-swagger/branch/master/graph/badge.svg [cov-url]: https://codecov.io/gh/go-swagger/go-swagger [vuln-scan-badge]: https://github.com/go-swagger/go-swagger/actions/workflows/scanner.yaml/badge.svg [vuln-scan-url]: https://github.com/go-swagger/go-swagger/actions/workflows/scanner.yaml [codeql-badge]: https://github.com/go-swagger/go-swagger/actions/workflows/codeql.yaml/badge.svg [codeql-url]: https://github.com/go-swagger/go-swagger/actions/workflows/codeql.yaml [release-badge]: https://badge.fury.io/gh/go-swagger%2Fgo-swagger.svg [release-url]: https://badge.fury.io/gh/go-swagger%2Fgo-swagger [quay-badge]: https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fquay.io%2Fapi%2Fv1%2Frepository%2Fgoswagger%2Fswagger%2Ftag%2F%3Flimit%3D1%26onlyActiveTags%3Dtrue%26filter_tag_name%3Dlike%3Av&label=Container%20Registry%20on%20quay.io&query=%24.tags[:1].name&logo=redhatopenshift&logoColor=#EE0000?color=green [quay-url]: https://quay.io/repository/goswagger/swagger?tab=tags [ghcr-badge]: https://ghcr-badge-ipv2.onrender.com/go-swagger/go-swagger/latest_tag?ignore=sha-*,edge,master&label=Container%20Registry%20on%20Github [ghcr-url]: https://github.com/orgs/go-swagger/packages/container/go-swagger/versions?filters[version_type]=tagged [gocard-badge]: https://goreportcard.com/badge/github.com/go-swagger/go-swagger [gocard-url]: https://goreportcard.com/report/github.com/go-swagger/go-swagger [codefactor-badge]: https://img.shields.io/codefactor/grade/github/go-swagger/go-swagger [codefactor-url]: https://www.codefactor.io/repository/github/go-swagger/go-swagger [doc-badge]: https://img.shields.io/badge/doc-site-blue?link=https%3A%2F%2Fgoswagger.io%2Fgo-swagger%2F [doc-url]: https://goswagger.io/go-swagger [godoc-badge]: https://godoc.org/github.com/go-swagger/go-swagger?status.svg [godoc-url]: http://godoc.org/github.com/go-swagger/go-swagger [slack-badge]: https://slackin.goswagger.io/badge.svg [slack-url]: https://slackin.goswagger.io [license-badge]: http://img.shields.io/badge/license-Apache%20v2-orange.svg [license-url]: https://github.com/go-swagger/go-swagger/?tab=Apache-2.0-1-ov-file#readme [ossf-badge]: https://api.securityscorecards.dev/projects/github.com/go-swagger/go-swagger/badge [ossf-url]: https://securityscorecards.dev/viewer/?uri=github.com/go-swagger/go-swagger [ossf-cci-badge]: https://www.bestpractices.dev/projects/11359/badge [ossf-cci-url]: https://www.bestpractices.dev/projects/11359 [fossa-badge]: https://app.fossa.io/api/projects/git%2Bgithub.com%2Fgo-swagger%2Fgo-swagger.svg?type=shield [fossa-url]: https://app.fossa.io/projects/git%2Bgithub.com%2Fgo-swagger%2Fgo-swagger?ref=badge_shield [fossa-badge-large]: https://app.fossa.io/api/projects/git%2Bgithub.com%2Fgo-swagger%2Fgo-swagger.svg?type=large [fossa-url-large]: https://app.fossa.io/projects/git%2Bgithub.com%2Fgo-swagger%2Fgo-swagger?ref=badge_large [oai-url]: https://raw.githubusercontent.com/swagger-api/swagger-spec/master/LICENSE [goversion-badge]: https://img.shields.io/github/go-mod/go-version/go-swagger/go-swagger [goversion-url]: https://github.com/go-swagger/go-swagger/blob/master/go.mod [top-badge]: https://img.shields.io/github/languages/top/go-swagger/go-swagger [commits-badge]: https://img.shields.io/github/commits-since/go-swagger/go-swagger/latest