Hasura vs Swagger Codegen
Hasura
hasura.ioSwagger Codegen
swagger.ioSide by side
| Figure | Hasura | Swagger Codegen |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | Yes |
| Web | Yes | Yes |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 3 | 2 |
| Spec score · API Generation Software | 8.0 (#5) | 8.3 (#3) |
| Self-hosting | The Hasura GraphQL Engine Community Edition can be deployed manually using its Docker image, and Hasura Enterprise Edition is deployable on-premises. | The generator service can be deployed locally through a Docker image named swaggerapi/swagger-generator-v3. |
Plans
In their own words
Hasura
Hasura is a hybrid API platform that generates data APIs over connected databases, so developers do not need to write handlers, schemas, or resolvers. Hasura Cloud plans provide instant GraphQL APIs, RESTified endpoints, and GraphQL subscriptions. Listed database sources include Postgres-compatible systems, Microsoft SQL Server, BigQuery, Amazon Athena, Snowflake, MySQL, Oracle, MariaDB, MongoDB, and ClickHouse. APIs can be extended with remote schemas, remote joins, Actions, and event or scheduled triggers. Authorization can use an authentication provider of the customer’s choice, with JWT controls through headers, cookies, or webhooks. Cloud hosting is available on AWS, Google Cloud Platform, and Microsoft Azure Cloud. The Community Edition can run from a Docker image, while Enterprise Edition supports on-premises deployment. Hasura Cloud also lists GitHub, observability integrations, query allow lists, access controls, and DDoS monitoring. Plans include a free tier and paid options.
Swagger Codegen
Swagger Codegen is an open-source tool that generates API client libraries, server stubs and documentation from OpenAPI specifications. Its template-driven engine parses OpenAPI or Swagger definitions and produces project code from schemas. Swagger states that it can generate client SDKs in over 40 languages and server boilerplate in over 20. Listed capabilities include OpenAPI import, schema-to-code generation, project scaffolding, custom templates, an interactive API reference, code samples and a command-line interface. Outputs and integrations include HTML and Confluence Wiki documentation, Apache2 configuration files and JMeter. The project is available from GitHub under the Apache-2.0 license, with a hosted option through SwaggerHub. SwaggerHub can generate code in a selected language and push it to source-control repositories. Supported client targets include C#, Dart, Go, Java, JavaScript, Kotlin, PHP, Python, R, Ruby, Scala, Swift and TypeScript variants. Server targets include ASP.NET Core, Go, Java Vert.x and JAX-RS options. The repository warns that untrusted descriptions may cause code injection.