On behalf of the Spring for GraphQL team and every contributor, it is my pleasure to announce the 1.0 GA release. It’s been 10 months since the project was announced and under 2 years since the first commit, unremarkably called “first commit”. The project began with the modest goal to replace the (now archived) minimal GraphQL Java Spring integration, but has since moved significantly beyond through community feedback and collaboration across Spring Boot, Spring Framework, Spring Data, and Spring Security.
The following are highlights from the release:
- Annotation-based programming model for data fetchers
- Data binding from input arguments with validation
- Field-level security through annotations on data
- Server handlers and interception over HTTP, WebSocket, and RSocket
- Querydsl and Query by Example repositories as data fetchers
- Batch loading support
- Client for executing over HTTP, WebSocket, and RSocket
- Test support with HTTP, WebSocket, RSocket, or directly, without a client
- GraphiQL page and schema printing page
Due to release today, Spring Boot 2.7 adds a Spring for GraphQL starter with auto-config goodness to declare GraphQL endpoints, GraphiQL and schema print pages, properties, callback interfaces, test support, and more. Use Spring Initializer to create a GraphQL application.
We’ve already spotted some wonderful resources from the community:
- GraphQL Petclinic
- comprehensive blog, auspiciously timed by Dan Vega
- excellent batch loading video tutorial by Nils Hartman
- book announcement from GraphQL Java founder Andreas Marek, we are looking forward to this one!
- it is also rumored, the inimitable Josh Long is putting the finishing touches on a multipart Spring Tips video series featuring Andreas Marek and one more guest. Stay tuned on this site.
Looking forward to next week when Spring I/O, a unique conference with a strong focus on community and technical content, resumes after a 2 year hiatus. It gives us the first opportunity to present this project after its GA release and have direct interactions. GraphQL coverage features in the keynote and in a dedicated session.
As always, if you’ve taken the time to report an issue, provide feedback, test, or participate in discussions, contributing thoughts and ideas, thank you! Every little bit helps to make an open-source project stronger.