ページ内ナビ
概要
SwagはGo source codeのdeclarative commentを解析し、API documentを生成するCLI/toolです。Swagger 2.0を中心に、v2系ではOpenAPI v3機能も拡張され、Gin等のGo Web Framework用pluginとSwagger UI integrationを利用できます。
特徴と向いている用途
公式資料に基づく紹介・実機未検証 · 内容確認日:
主な特徴
handler周辺のannotationからAPI operationとschemaを生成する
general API info、route、parameter、response、security等をcomment annotationで記述し、swag initからdocs.go、JSON、YAML等のdocumentを生成できます。
出典:[2]
向いている用途
Go Web APIのsource commentとAPI documentを近い場所で管理したい場合に向く
Gin等のhandler codeにannotationを置き、Swagger UIやclient向けspecをbuild時に生成したいbackend projectに適します。
出典:[2]
導入前の確認
参考にした公式資料
- [1]swaggo/swag — GitHub repository(2026-10-06)
- [2]Swag v2.0.0-rc6 — README(2026-10-06)
- [3]Swag v2.0.0-rc6 — go.mod(2026-10-06)
- [4]Swag v2.0.0-rc6 release(2026-10-06)
- [5]Swag MIT license(2026-10-06)
編集部からの補足
handler付近のcommentからAPI documentを生成でき、Ginなど既存Go Web Frameworkへ組み込みやすいtoolです。v2系は現在RCなので、OpenAPI v3機能を使う場合はgenerator versionを固定し、生成specのdiffをCIで確認してください。
3ステップで試す
- 1
ソースを取得
git clone --depth 1 https://github.com/swaggo/swag.git - 2
リポジトリへ移動
cd swag - 3
公式手順を確認
READMEのInstallation / Quick Start / Getting Startedにある公式コマンドを続けて実行してください。
find . -maxdepth 1 -iname 'README*' -exec sed -n '1,220p' {} \; -quit
成長
成長の推移 · 直近30日
13,040 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 5
- Open PR
- 63
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Chi22,929 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
net/http互換を保ったままRoute group・Middlewareを組み合わせるGo HTTP Router
Go - Apache Casbin20,433 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
ACL・RBAC・ABACをpolicy modelとしてapplicationから分離するGo authorization library
Go - imgproxy11,109 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
applicationのimage processingを独立HTTP serviceへoffloadする
Go - golang-jwt9,229 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
JWTの生成・署名・parse・claims validationを行うGo implementation
Go - Bifrost8,576 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
複数LLM providerを一つの高速gatewayへ集約する
Go - OpenSERP1,447 Stars
共通タグ 2件 · 共通カテゴリ 1件 · 同じ言語
複数の検索サービスと本文抽出を共通APIへまとめる
Go
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。