GraphQL Annual Report 2019
The GraphQL Foundation is a neutral foundation founded by global technology and application development companies. The GraphQL Foundation encourages contributions, stewardship, and a shared investment from a broad group in vendor-neutral events, documentation, tools, and support for GraphQL.
The GraphQL Foundation was formed in March 2019 and has now completed one full year of operation. We are pleased to present this annual report detailing the many things we have accomplished in support of this fast growing and broadly adopted platform.
Comments and feedback are welcome at firstname.lastname@example.org.
“The growth behind the technology and the community supporting GraphQL has been incredible. The GraphQL Foundation has played a critical role in helping to make GraphQL a neutral industry standard and enabling widespread adoption by encouraging contributions, and creating shared tools, and resources.”
– Lee Byron, Executive Director, GraphQL Foundation, and GraphQL Co-Creator
A BUSY YEAR FOR GRAPHQL
- Who we are
- Cultivating Projects
- Growing membership
- Growing The Graphql End User Community
- How Do I Get Involved?
- Events 2019
- Community Updates
- Community Engagement
- GraphQL Landscape
- A Look Ahead to 2020
WHO WE ARE
The GraphQL Foundation is a neutral foundation created by the founders of GraphQL, along with many organizations who are using GraphQL in production. The GraphQL Foundation encourages contributions, stewardship, and a shared investment by providing vendor-neutral events, documentation, tools, and support for GraphQL.
GraphQL is a next-generation API technology developed internally by Facebook in 2012 before being publicly open sourced in 2015. Unlike REST-based APIs, which take advantage of HTTP and existing protocols, GraphQL APIs provide developers with the flexibility to query the exact data they need from a diverse set of cloud data sources, with less code, greater performance and security, and a faster development cycle. Not only does this enable developers to rapidly build top quality apps, it also helps them achieve consistency and feature parity across multiple platforms such as web, iOS, Android, and embedded and IoT applications.
The GraphQL Foundation also funded community member Ivan Goncharov to work through a variety of GraphQL project issues, from backlog cleanup and more.
The GraphQL Foundation launched with 10 members and we wrapped the year with 21 members in total, including Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and more. Join your industry peers in helping to shape the GraphQL ecosystem.
Organizations interested in becoming members of the GraphQL Foundation or the GraphQL Specification can learn more on our new member page. If you have questions about membership, please send an email to email@example.com.
GROWING THE GRAPHQL END USER COMMUNITY
We offer multiple opportunities for end users to contribute and have their voices heard. Companies that use GraphQL technologies internally, but do not sell any GraphQL services externally, are eligible to join the end user community.
Our end user community is growing and we finished 2019 with 83 top companies and startups that are committed to accelerating the adoption of GraphQL and improving the developer experience. Please email us for more information at firstname.lastname@example.org.
HOW DO I GET INVOLVED?
GraphQL is first and foremost an open source project, and developers can contribute to the project at https://github.com/graphql. Organizations interested in becoming members of the GraphQL Foundation or participating in development of the GraphQL Specification can learn more on our new member page. If you have questions about membership, please send an email to email@example.com.
In addition to multiple community events, GraphQL Summit 2019 was held in San Francisco, and GraphQL Asia 2019 was held in Bangalore.
Omg @MoonTahoe thanks for making me crack up so early in the morning! Learning about subscriptions in GraphQL via game show is highlight for sure. Could not get a good photo I was way too entertained. The 90s CSS inspired slides intro was the best 😂 #graphqlsummit #GraphQL pic.twitter.com/qVpTPKOmjn— Briana Baker (@brianacodes) October 31, 2019
The GraphQL community is fortunate to have an active and engaged group of companies participating in the GraphQL Foundation.
WHY OUR MEMBERS USE GRAPHQL
“GraphQL is a transformative technology that saves time and money for every team building rich, user-centric applications. Apollo is proud to play a central role in its rapid rise and maturation in 2019. Apollo’s industry-leading open source and cloud services power many of the world’s most significant online properties, including Expedia, Airbnb, PayPal, The New York Times, SurveyMonkey and thousands more. Apollo also hosts the world’s largest event dedicated to this technology - GraphQL Summit - which in 2019 featured more than 1,200 attendees and over 60 technical talks from some of the world’s most recognizable brands that are already benefiting from GraphQL.”
“Collaborating with the Open Source community is always special; it has allowed AWS to improve and better understand the use cases that customers want to tackle, such as local mocking and testing. In order to move fast and ensure that we were releasing a valuable feature, we worked for several months with community members. We want to give a special thanks to Conduit Ventures for their significant contributions to the new Amplify local mocking environment.”
“GraphQL has been a huge accelerator for how Expedia Group’s web application and service teams build APIs. Being part of the open source community is a priority for us in how we contribute back and learn from others on the same journey.”
“GraphQL is a rare technology that simultaneously improves the communication between machines and between humans! Data becomes easier to explore and consume for humans and GraphQL’s spec driven design allows the creation of tools that can automate complex tasks around data fetching on the server and data management on the client. Hasura’s flagship GraphQL engine automates complex data access work while giving API consumers an API they love using!”
“IBM is pleased to be an active member of the Linux Foundation’s GraphQL project by participating on its technical working group and as a founding member of its Governing Board. IBM continued its commitment to innovating on key open technologies such as GraphQL in 2019.”
“At Novvum, our team is tiny, but we try to contribute to the foundation and open source community whenever possible. A few projects that come to mind are graphql-playground, graphql-weekly, graphql-birdseye, and the graphql edX course. GraphQL enables teams to focus on their bottom line and less on the nuances of software development. It provides the freedom necessary for frontend devs, UI/UX designers, content marketers, etc. to make incredible stuff without compromising the safety, flexibility, and stability desired by backend teams. It’s come a long way since the early days. We are not surprised to see so many big named companies adopting it today.”
“GraphQL has been a complete game changer in the way PayPal thinks about data, fetch data and build applications.”
“Salsify provides a commerce and content platform that enables the world’s largest brands to deliver engaging product experiences across the digital shelf. Our GraphQL powered APIs enable us to support a diverse set of integrated use cases on an extensible microservices platform architecture with great developer ergonomics and excellent performance.”
HOW OUR MEMBERS ARE USING GRAPHQL
Expedia Group continues to rapidly adopt GraphQL. Over the last 2 years we have transitioned our REST APIs to GraphQL – and now over 90% of all customer interactions in web and nativevrbo.com apps are powered by GraphQL APIs and over 30% of all customer interactions on Expedia.com as well as other brands such as Hotels.com.
Facebook has used GraphQL to power our production mobile apps for the last 7.5 years, from its creation as an internal API in 2012 to its open sourcing in 2015 and beyond. In 2020, we’re as invested in the community and the technology as ever — we’re discussing our approach to streaming semantics with the GraphQL working group, and we’re powering the new Facebook.com with GraphQL and Relay.
Novvum had been deploying graphql into production for the majority of our customers since its inception back in 2015. On any project, we find it extremely beneficial to add GraphQL as the primary communication layer between clients and the data that they need. From building car-sharing platforms on a time crunch to architecting fintech infrastructure to scaffolding MVPs for early-stage startups, we’ve observed many short- and long-term benefits by introducing GraphQL.
PayPal uses GraphQL to power many of our products and user experiences including PayPal Checkout, our flagship product that facilitates payments for millions of merchants and users.
MEMBER CONTRIBUTIONS TO THE GRAPHQL ECOSYSTEM
Our members have been active and engaged participants in the GraphQL ecosystem. Here are some of the ways in which our ecosystem hsa been enriched through their participation.
- Apollo Graph Manager: Tools and services for teams collaborating on a data graph, including a central schema registry, data graph analytics, workflows for developing and maintaining agile schemas, and machinery for managing graph security and policy and operations.
- Apollo Client: The industry’s most popular open-source library for connecting application UI to a GraphQL service. The upcoming Apollo Client 3, currently in beta, introduces a flexible data cache and brings many improvements to managing both local state and remote data.
- Apollo developer tooling: The Apollo tooling repository is home to several open-source GraphQL developer tools, including the Apollo CLI and VS Code extension. These tools connect to the Apollo registry, a central hub for managing your data graph, in order to provide workflows for an excellent developer experience.
- GraphQL Kotlin: Continued work on GraphQL Kotlin libraries for running GraphQL Server, including code first-schema generation and a Spring Boot based Kotlin Graphql Server. This technology powers Expedia.com and its fleet of brands like Orbitz, Wotif, & Travelocity
- GraphQL Engine: An open-source GraphQL engine for Postgres and other data sources.
- GraphQURL: A command like utility like curl for GraphQL, with autocomplete and support for subscriptions.
- graphql-bench: A GraphQL benchmarking suite to make it easy for developers to test the performance of their GraphQL servers.
- learn-graphql: Open-source tutorials for almost all frontend application stacks to get started with GraphQL.
- OpenAPI-to-GraphQL: Released the open-source OpenAPI-to-GraphQL library, which generates GraphQL interfaces on top of existing REST APIs. IBM made numerous other contributions to the open source community.
- libgraphqlparser: Delivered improvements to the open source GraphQL C++ library
- Loopback 4 OpenAPI-to-GraphQL: Released Loopback 4 “OpenAPI-to-GraphQL” module that creates a GraphQL wrapper for REST APIs which are described by an OpenAPI specification
PUBLICATIONS FROM OUR MEMBERS
- Principled GraphQL, best practices for creating, maintaining, and operating a data graph
- Fullstack GraphQL tutorial
- Merging GraphQL schema files and more from the CLI
- Developing and testing GraphQL APIs, Storage and Functions with Amplify Framework Local Mocking features
- Amplify DataStore – Simplify Development of Offline Apps with GraphQL
- Architecture of a high performance GraphQL to SQL engine
- Level up your serverless game with a GraphQL data-as-a-service layer
- Fluent GraphQL clients: how to write queries like a boss
- An Empirical Study of GraphQL Schemas (at ICSOC conference)
- An Empirical Study of GraphQL (blog)
- GraphQL API Management
TALKS, PAPERS, AND DISCUSSIONS ON GRAPHQL
- GraphQL Summit 2019 Keynote, by Matt DeBergalis
- Migrating to Apollo and GraphQL at Airbnb, by Brie Bunge
- The Architecture of Federation, by Jeff Hampton
- All GraphQL Summit 2019 talks
- Co-organized the GraphQL London Meetup group
- Co-organized the GraphQL San Francisco Meetup group
- Archive of Meetup talks.
- Building modern APIs with GraphQL
- Accelerating product & data delivery with GraphQL
- API management & governance for GraphQL
- Building a high performance realtime GraphQL API on existing databases
- GraphQL sessions at 2019 API Conference, Berlin)
- Demonstrated GraphQL API Management in IBM API Connect and IBM DataPower® Gateway enabling determination of GraphQL query characteristics, advanced threat protection, customized rate limiting, and API plan configuration
- Conducted IBM Developer Meetups where GraphQL work was highlighted in talks and technical demonstrations
If you are a programmer, this course will help you gain the skills you need to get started using GraphQL for a small project, or professionally in production. We cover a variety of tools to address multiple use cases.
If you are nontechnical, this course will help you communicate with developers and participate in conversations about GraphQL, and understand when and why to use GraphQL for a project.
Want to start a meetup? Drop us a line, we’d love to hear your idea: firstname.lastname@example.org.
The GraphQL Interactive Landscape was recently published by the GraphQL Foundation.
What is an interactive landscape? The concept started when the CNCF began the process of cataloging different types of tools for building out a cloud native architecture. This led to the creation of the CNCF Interactive Landscape. Turns out this tool became very helpful to all of us sorting out this new and exciting space. In the interest of providing a similar reference, the GraphQL Foundation defined their own version of the interactive landscape, including also adopters of GraphQL technology.
The landscape is open source, and contributions from the community are welcomed. You can find guidelines for updating the landscape at: https://github.com/graphql/graphql-landscape.
The DevStats tool, which is open source, downloads data representing every public GitHub action across GraphQL Foundation projects and stores it in a queryable Postgres database. DevStats downloads updated data every hour and you can check out the tool here: https://devstats.graphql.org
A LOOK AHEAD TO 2020
As the Executive Director of the GraphQL project, I hope I can speak for the whole community when I say we are looking forward to another productive year of GraphQL development. We are putting the final touches on the GraphQL 2020 spec release, and continue to make great progress developing new features, stabilizing existing ones, and exploring beyond core GraphQL.
It has been really encouraging to see GraphQL continue to evolve over the past year as a technology and as a community. GraphQL is being used at scale by not only Facebook but now a great number of organizations large and small. As I said when first introducing the project, GraphQL is unapologetically driven by the needs of the client. This has been a critical aspect of GraphQL’s success and it is great to see this principle reflect itself in our community, where those more interested in consuming APIs than producing them have come together to support the ongoing sustainability of the project.
Since establishing the GraphQL Foundation, we’ve had an outpouring of support from these companies. This neutral, non-profit home for the GraphQL project has provided a healthy way for users, contributors, and supporters to collaborate and contribute funding in support of our programs and collaborative processes. For example, this support has enabled us to support long-time contributor Ivan Goncharov to focus on crucial development and maintenance of the reference implementation, specification and other community gardening work. It has also allowed us to launch a free GraphQL edX course, and has enabled us to take some first steps toward supporting and producing community events.
Development of the GraphQL spec has remained open to all contributors. Over the last year we’ve brought more rigor and clarity to the development process. I’ve found it encouraging that contributions have been a healthy mix of aspirational new features and iterative improvements to the stable base. This demonstrates that GraphQL is evolving in meaningful ways to address exciting new use cases while also building confidence and stability around what thousands of companies use in production every day. Both of these are essential for GraphQL’s long term success.
Looking ahead, I have great optimism for GraphQL and see huge opportunities. First, we’ve been hard at work on the 2020 spec and that release is imminent. Spec development continues to accelerate and exciting advancements and improvements are underway for the 2021 release and beyond. Second, we have been accepted to participate in Google Summer of Code and are looking forward to adding these talented students as project collaborators. Third, the communities around the core GraphQL project are collaborating. For example, GraphiQL and Playground recently announced they will be joining efforts to build better tools for us all.
Thank you again for your involvement in this project and your support of the GraphQL Foundation. I am pleased with our progress and am looking forward to another productive year.
– Lee Byron, Executive Director, GraphQL Foundation, and GraphQL Co-Creator