Swagger Editor (https://editor.swagger.io/) for designing and describing the e-commerce app REST APIs. It allows you to write and preview, at the same time, your REST APIs' design and description. Please make sure that you use OAS 3.0. At the time of writing this book, the default is OpenAPI version 2.0. You can change that from Edit | Convert to OpenAPI 3. An embedded message will appear with the Cancel and Convert options. Click on the Convert button to convert OAS from version 2.0 to 3.0.
Swagger Codegen (https://github.com/swagger-api/swagger-codegen) for generating the Spring-based API interface. You'll use the Gradle plugin (https://github.com/int128/gradle-swagger-generator-plugin) for generating code that works on top of Swagger Codegen. There is also an OpenAPI tool Gradle plugin – OpenAPI Generator (https://github.com/OpenAPITools/openapi-generator/tree/master/modules/openapi-generator-gradle-plugin). However, we'll prefer the former one because of the open issues count, which is 1.7k (multiple for Java/Spring as well) at the time of writing.
Swagger UI (https://swagger.io/swagger-ui/) for generating the REST API documentation. The same Gradle plugin will be used to generate the API documentation.