Software Alternatives & Reviews

OpenAPI v4 Proposal

Fern ts-rest goa StopLight
  1. 1
    Describe your API endpoints, types, errors, and examples. Generate SDKs, documentation, and server boilerplate.
    Pricing:
    • Open Source

    #Utilities #Application Utilities #API Tools 6 social mentions

  2. Simplify E2E type-safety for your Typescript REST APIs
    Pricing:
    • Open Source

    #Developer Tools #API Tools #Cloud Computing 7 social mentions

  3. 3
    Tapir provides a programmer-friendly, reasonably type-safe API to expose, consume and document HTTP endpoints, using the Scala language.
    We're using tapir (https://tapir.softwaremill.com/en/latest/), and are pretty happy with it.

    #Developer Tools #API Tools #Utilities 2 social mentions

  4. 4

    goa

    A design driven approach for building microservices in Go
    Pricing:
    • Open Source
    Few folks in here are (rightly) frustrated with the code generation story and broader tooling support around the OpenAPI standard. I've found a few alternative approaches quite nice to work with: - Use a DSL to describe your service and have it spit out the OpenAPI spec as well as server stubs. In other words, I wouldn't bother writing OpenAPI directly - it's an artifact that is generated at build time. As a Go user, I quite like Goa (https://goa.design/) but there are others shared in here like TypeSpec. - There are situations where sticking a backend-for-frontend (BFF) in front of APIs can yield great productivity boosts. For example, in the past we built a thin GraphQL proxy that calls out to a poorly structured REST API. Integrating with that was much more convenient. Most recently, I've been playing with a BFF built with tRPC (https://trpc.io/) which calls out to a REST API. It seemed to provide an even better experience if you use TypeScript on the front-end and in the BFF. It does not have a codegen step and I was really pleased with how fast I could iterate with it - granted it was a toy project.

    #Developer Tools #Cloud Computing #API Tools 27 social mentions

  5. Stoplight is an API Design, Development, and Documentation platform that enables consistency, reusability, and quality in your API lifecycle, all with an easy, enjoyable developer experience.
    Pricing:
    • Open Source
    • Freemium
    • Free Trial
    I'm sorry, but you have completely misunderstood the purpose of Open API. It <i>is not</i> a specification to define your business logic classes and objects -- either client or server side. Its goal is to define the <i>interface</i> of an API, and to provide a single source of truth that requests and responses can be validated against. It contains everything you need to know to make requests to an API; code generation is nice to have (and I use it myself, but mainly on the server side, for routing and validation), but not something required or expected from OpenAPI For what it's worth, my personal preferred workflow to build an API is as follows: 1. Build the OpenAPI spec first. A smaller spec could easily be done by hand, but I prefer using a design tool like Stoplight [0]; it has the best Web-based OpenAPI (and JSON Schema) editor I have encountered, and integrates with git nearly flawlessly. 2. Use an automated tool to generate the API code implementation. Again, a static generation tool such as datamodel-code-generator [1] (which generates Pydantic models) would suffice, but for Python I prefer the dynamic request routing and validation provided by pyapi-server [2]. 3. Finally, I use automated testing tools such as schemathesis [3] to test the implementation against the specification. [0] https://stoplight.io/ [1] https://koxudaxi.github.io/datamodel-code-generator/ [2] https://pyapi-server.readthedocs.io [3] https://schemathesis.readthedocs.io.

    #API Tools #APIs #API 23 social mentions

Discuss: OpenAPI v4 Proposal

Log in or Post with