3 ms·
They approach the same problem from opposite directions. Goa's DSL will let you code a server, and then export a Swagger spec that clients can consume (and code
by niftich 10y ago
They approach the same problem from opposite directions. Goa's DSL will let you code a server, and then export a Swagger spec that clients can consume (and codegen their end from).
Whereas Swagger's code generators start with the Swagger spec already written. You can use them to generate a server, which will create the scaffolding but leave you with the logic to implement.
- tokenizerrr 10y agoSwagger can also generate its spec from an already written server, and that's how I'm using it primarily.
- niftich 10y agoWould you mind linking to some docs on how to do that? I only found this quote, which hints that it's a manual process (if your framework doesn't produce the spec): "Either you create the definition manually (using the same Swagger Editor mentioned above), or if you are using one of the supported frameworks (JAX-RS, node.js, etc) [1], you can get the Swagger definition generated automatically for you." [2] [1] http://swagger.io/open-source-integrations/ http://swagger.io/open-source-integrations/ [2] http://swagger.io/getting-started/ http://swagger.io/getting-started/
- tokenizerrr 10y agoI'm using Java Spring (so JAX-RS) and use https://github.com/swagger-api/swagger-core https://github.com/swagger-api/swagger-core. To further customize it I use the annotations https://github.com/swagger-api/swagger-core/wiki/Annotations-1.5.X https://github.com/swagger-api/swagger-core/wiki/Annotations...
- wing328hk 10y agoThere are many plug-ins to to generate OpenAPI/Swagger spec from annotations in the source code. For C#, please try https://github.com/domaindrivendev/Swashbuckle https://github.com/domaindrivendev/Swashbuckle For PHP, please try https://github.com/zircote/swagger-php https://github.com/zircote/swagger-php For other langauges, just do a google search on "{lang} swagger" and you will probably find something useful.