Sobre el proyecto

Swagger Codegen convierte descripciones de API en formato OpenAPI o Swagger en bibliotecas de cliente generadas, esqueletos de servidor, documentación de API y artefactos de soporte. Las líneas 2.x y 3.x se mantienen de forma independiente y utilizan diferentes ID de grupo de Maven; la compatibilidad con OpenAPI 3.0.x solo está disponible en 3.x. El README lista la versión 3.0.71 como la versión estable actual de 3.x para especificaciones 1.0 a 3.0, y la versión 2.4.46 como la versión estable actual de 2.x para especificaciones 1.0 a 2.0. Las salidas compatibles cubren clientes API para lenguajes como Java, Python, JavaScript/TypeScript, Go, C#, PHP, Ruby, Swift, Kotlin, Rust y muchos otros; esqueletos de servidor para marcos de trabajo como Spring, JAX-RS, ASP.NET Core, Go, Flask, Node.js, Rails y marcos de Scala; y documentación en HTML, HTML dinámico y Confluence Wiki. También puede generar configuraciones de Apache2 y salidas relacionadas con JMeter. La interfaz principal es una CLI de Java. Un comando típico utiliza una especificación de entrada, el lenguaje o marco de trabajo de destino y un directorio de salida. La CLI proporciona ayuda general de generación y ayuda de configuración específica del idioma, mientras que los archivos de configuración, plantillas personalizadas, asignaciones de tipos, asignaciones de importaciones y la generación selectiva permiten adaptar la salida generada. La salida HTML dinámica se puede servir a través del ejemplo Node.js incluido, mientras que la salida HTML estática produce un archivo HTML independiente simple. El proyecto documenta la construcción con Maven, el uso de Docker y la integración de la generación en flujos de trabajo basados en Maven, Gradle y GitHub. También se hace referencia a generadores en línea para usuarios que no desean ejecutar su propia instancia. Para la validación de especificaciones, el README apunta a un validador Swagger en línea y a Spectral para validación local. Una nota de seguridad advierte que las especificaciones de fuentes no confiables deben revisarse antes de la generación, ya que puede ocurrir inyección de código. Las plantillas del proyecto están cubiertas por la licencia del repositorio, pero el código generado está destinado a ser TAL CUAL, propiedad del usuario, y no sujeto a la licencia del proyecto principal.