Springdoc-openapi: Question: differentiation to springfox-project

Created on 17 Aug 2019  路  9Comments  路  Source: springdoc/springdoc-openapi

IMO Springfox (https://github.com/springfox/springfox) is a already established, widley used open source - project which brings OpenAPI - support to Spring (Boot) applications.
Where do you see your strengths / weaknesses compared to Springfox?
From my perspective the biggest issue with Springfox was that it was driven by a single person, which caused issues with adding OpenAPI 3.0 - support. (Springfox currently only supports OpenAPI 2.0.) At this point in time it look麓s like this may get better.

Most helpful comment

Hi,

OAS 3 was released in July 2017, and there is still no release of springfox to support OAS 3.
springfox covers for the moment only swagger 2 integration with spring-boot. The lastest release date is june 2018. So, in terms of maintenance there is a big lack of support lately.

We were expecting the support of OpenAPI 3, but as you said it took a lot of time.
We decided to move forward and share the library that we already used on our internal projects, with the community.
The biggest difference with springfox, is that we integrate new features not covered by springfox:

  • The integration between spring-boot and OpenAPI 3 standard.
  • We rely on on swagger-annotations and swagger-ui only official libraries.
  • We support new features on spring 5, like spring-weblfux with annotated controllers.
  • We also do our best to answer all the questions and address all issues or enhancement requests.

All 9 comments

Hi,

OAS 3 was released in July 2017, and there is still no release of springfox to support OAS 3.
springfox covers for the moment only swagger 2 integration with spring-boot. The lastest release date is june 2018. So, in terms of maintenance there is a big lack of support lately.

We were expecting the support of OpenAPI 3, but as you said it took a lot of time.
We decided to move forward and share the library that we already used on our internal projects, with the community.
The biggest difference with springfox, is that we integrate new features not covered by springfox:

  • The integration between spring-boot and OpenAPI 3 standard.
  • We rely on on swagger-annotations and swagger-ui only official libraries.
  • We support new features on spring 5, like spring-weblfux with annotated controllers.
  • We also do our best to answer all the questions and address all issues or enhancement requests.

Thanks for sharing your internal library with the community. Relying on swagger-annotations sounds good. (Seems to be the same approach CXF took on the JAXRS-side.)

I agree with the comments here, however it doesn't really make sense to have 2 projects with the same goals. I think it would benefit everyone if longer term somehow these 2 projects could join forces. As we saw in the springfox project, it does take quite a bit of effort from the community to maintain the project.

Moved a existing project a few days ago to spingdoc-openapi. Looks really good so far! Good work!

Allow me to chim in... I found here from https://github.com/springfox/springfox/issues/3070

First of all, great work to make Spring (Boot) ready for OpenAPI 3! That was much needed.

...Springfox was that it was driven by a single person

This project seems to meet the same fate.

it doesn't really make sense to have 2 projects with the same goals

Spot on. Starting a project and maintaining it for years to come are two very different things. From personal experience as both an open-source consumer and provider I expect a certain commitment from anyone involved with a project. It simply wouldn't be fair to let users of your project down if you get tired of maintaining it after let's say two years. Hence, as an author you should either have the stamina to be in it for the long run or foster a strong community that is ready to take over.

@springdoc I would very much encourage you and @dilipkrish to find some common ground and do what is best for the community.

I would love to have an open conversation with both the maintainers of both Springdoc and Springfox. As a commuity we should get together to build a community standard for integrating them together.

I switched to Springdoc this week because of the stale feeling I get from Springfox. There is something beautiful about a community, and if we get together to build a wonderful product. That'd be awesome!

Can you confirm me there is no way to have a /swagger-resources endpoint with springdoc as springfox does, to list all services in a microservice architecture for example ?

Hi,

If your question is about proving a Centralized API Documentation. You can have a look at our answer to #108

@marcelstoer I wholeheartedly agree. Perhaps you should make this point again in a new issue since as these concerns are outside the scope of this issue and it is now closed.

It would be a tragic for Springfox to lose attention because of maintainer burnout/lack of time and have this library be vulnerable to the same fate (this is _not to imply in the slightest that_ Springfox is dead. The author and many contributors are making an effort to triage issues and sort things out for new releases and features as of recently). Springfox is a field-tested library and a lot of effort over a long period of time has gone into upkeep and improvements. I know that @dilipkrish and @MaksimOrlov have been working super hard and it feels a little wrong (wasteful?) to see so much effort going into a new library whose most distinctive features are either already implemented (i.e. webflux support which has not yet been shipped in a release but is there) or are in the works (OpenAPI 3) in Springfox.

I think it would be massively beneficial for everyone (users, contributors, and project owners) if we as a community have a conversation (including @springdoc and @dilipkrish) about these two libraries to see what could be done to make the most out of both of these projects.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

pLotoniC picture pLotoniC  路  6Comments

urswiss picture urswiss  路  5Comments

danielbecs picture danielbecs  路  4Comments

bfs-natewallman picture bfs-natewallman  路  4Comments

debargharoy picture debargharoy  路  3Comments