Repolode
swagger-api

swagger-api/swagger-codegen

CLI-инструмент для генерации SDK клиентов API, серверных заглушек и HTML-документации по спецификации OpenAPI/Swagger.

Звёзды
17,793
Форки
5,948
Открытые issues
3,442
Последний коммит
вчера

Что это?

Swagger Codegen — генератор кода на основе шаблонов, который читает спецификацию OpenAPI или Swagger и создает библиотеки клиентов API, серверные заглушки и документацию по API. Он избавляет от необходимости вручную писать модели запросов и обертки для эндпоинтов на каждом языке, который использует команда.

Проект поддерживает множество целевых платформ: клиенты для Java, C#, Go, Python, TypeScript, PHP, Swift, Kotlin, Rust и других языков, а также серверные заглушки для таких фреймворков, как Spring, ASP.NET Core, Flask и Rails. Документацию можно создавать в виде статического HTML-файла или динамического одностраничного HTML-приложения. Генерация запускается через CLI JAR, Docker или интеграции с Maven и Gradle.

Проект разделен на ветки версий 2.X и 3.X с разными Maven group ID; поддержка OpenAPI 3.0 есть только в ветке 3.X. Шаблоны можно настраивать: менять результат генерации или добавлять собственные целевые платформы.

Ключевые возможности

  • 01Генерирует клиентов API на десятках языков и для разных фреймворков по спецификациям OpenAPI или Swagger.
  • 02Создает серверные заглушки для таких фреймворков, как Spring, ASP.NET Core, Flask и Rails.
  • 03Создает статическую или динамическую HTML-документацию по API.
  • 04Шаблоны можно настраивать, чтобы менять результат генерации или добавлять новые генераторы.
  • 05Запускается через CLI, Docker или интеграции с Maven и Gradle.

Сценарии использования

  • Генерация типизированного SDK для внутреннего REST API, которым пользуются несколько команд, разрабатывающих клиентские приложения.
  • Создание каркаса серверных заглушек на основе API, проектируемого по спецификации.
  • Публикация HTML-документации API по файлу OpenAPI.
  • Создание примера клиента petstore, чтобы изучить структуру сгенерированного кода.

Быстрый старт

  1. 1

    Клонируйте репозиторий

    git clone https://github.com/swagger-api/swagger-codegen
  2. 2

    Перейдите в каталог проекта

    cd swagger-codegen
  3. 3

    Соберите проект с помощью Maven

    mvn clean package
  4. 4

    Создайте PHP-клиент по спецификации Petstore

    java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i https://petstore.swagger.io/v2/swagger.json -l php -o /var/tmp/php_api_client

Что важно знать

  • Необходимо собирать проект из исходного кода с помощью Java и Maven, что требует дополнительной настройки.
  • Версии 2.X и 3.X поддерживаются отдельно и имеют разные group ID, поэтому проверьте, какая линейка вам нужна.

Темы

Частые вопросы

Что такое swagger-codegen?
CLI-инструмент для генерации SDK клиентов API, серверных заглушек и HTML-документации по спецификации OpenAPI/Swagger. Swagger Codegen — генератор кода на основе шаблонов, который читает спецификацию OpenAPI или Swagger и создает библиотеки клиентов API, серверные заглушки и документацию по API. Он избавляет от необходимости вручную писать модели запросов и обертки для эндпоинтов на каждом языке, который использует команда.
swagger-codegen можно использовать бесплатно? Какая у него лицензия?
swagger-codegen распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
swagger-codegen всё ещё поддерживается?
Активно поддерживается. Последний коммит в swagger-codegen — 22 окт. 2026 г..
Для чего можно использовать swagger-codegen?
Генерация типизированного SDK для внутреннего REST API, которым пользуются несколько команд, разрабатывающих клиентские приложения. Создание каркаса серверных заглушек на основе API, проектируемого по спецификации. Публикация HTML-документации API по файлу OpenAPI. Создание примера клиента petstore, чтобы изучить структуру сгенерированного кода.
Как установить swagger-codegen?
Клонируйте репозиторий: git clone https://github.com/swagger-api/swagger-codegen Перейдите в каталог проекта: cd swagger-codegen Соберите проект с помощью Maven: mvn clean package Создайте PHP-клиент по спецификации Petstore: java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i https://petstore.swagger.io/v2/swagger.json -l php -o /var/tmp/php_api_client
Где скачать swagger-codegen?
Исходный код и инструкции по установке — на GitHub: https://github.com/swagger-api/swagger-codegen

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты