August 14, 2019

The Guild Takes over Development of the GraphQL CLI & Other Libraries

urigo
Uri Goldshtein
@UriGoldshtein
Join the
discussion
3

The Guild is known for their GraphQL expertise. We are excited that they're taking over development of our open source libraries graphql-cli, graphql-config, graphql-import and graphql-binding.

A guest post by Uri Goldshtein.

The Guild: Passionate open source developers

Hi everyone, my name is Uri and I'm the founder of The Guild, a group of passionate developers dedicated to create sustainable open source libraries.

We are mostly focused on GraphQL related work and already today maintain libraries like GraphQL Code Generator, GraphQL Inspector, GraphQL Modules, GraphQL Toolkit, SOFA, a WhatsApp clone tutorial and a lot more.

We also recently took over the maintenance of merge-graphql-schemas in order to upgrade it to use the newer tools in the ecosystem and keep it alive.

A new home for Prisma's GraphQL open source libraries

We love the work that Prisma is doing in open source and GraphQL and were impressed by the number of innovative open source libraries they've released in recent years.

That's why we were very excited when they approached us recently. As they focus on new and exciting tools that simplify database workflows, we can help them make sure their existing open source libraries get the love they deserve!

That's why today we are partnering up and they will transfer maintenance and ownership of the following GraphQL libraries to us:

We are certain that those libraries will find a safe home with The Guild and get the highest standards of maintenance which we are known for.


What happens next?

We are incredibly excited to move these projects forward! Here's our plan for the immediate next steps.

Incorporating the new libraries in The Guild's build system

We are going to add all those libraries to our connected build system system. With that system, for each commit, we run not only the tests of that library, but also running the tests of all of our different clients and customers and feed those results back to GitHub's CI checks.

That includes high performance and load tests as some of those customers have some very high traffic consumer facing applications.

You can sign up to connect your own build into the connected build system and get our help with keeping your app's code up-to-date and influencing the libraries you depend on in a direct way!

Housekeeping: Cleaning up, upgrading dependencies, refactoring, ...

We have already reviewed the code and the open issues of each library and created plans to upgrade their dependencies, refactor the code and create a clear path forward, with minimum breaking changes.

Next steps for the individual projects

Next to these general efforts, we also already have some rough for ideas what we want to do with the individual projects. Let us know your feedback for these ideas as well as your own thoughts and wishes for the future of these projects!

We've opened roadmap issues on each of those libraries which you can find linked in each section below. Please join the discussion!

graphql-cli
  • Reach out to all the plugin and tool maintainers that currently support the GraphQL CLI to better understand their needs
  • Bring back all existing commands and update them to accommodate the ever-changing GraphQL ecosystem

Do you have an idea or a wish for graphql-cli? Join the roadmap discussion!

graphql-binding
  • Merge efforts with other similar libraries that generate "SDKs" from GraphQL
  • Make generation code reuse the GraphQL Code Generator internals

Do you have an idea or a wish for graphql-binding? Join the roadmap discussion!

graphql-config
  • Talk to all the libraries and tool maintainers that are supporting that standard and get their needs
  • Better support for modularized schemas

Do you have an idea or a wish for graphql-config? Join the roadmap discussion!

graphql-import
  • Connect the build into our other schema management libraries that support it to make sure we cover all cases (graphql-toolkit, GraphQL Modules, GraphQL Code Generator)
  • Experiment with # import Type from 'http://external-schema/graphql';
  • Experiment with support for babel plugin to perform transformations at build time
  • A clear spectrum of GraphQL Schema tools - when to use what (including Apollo Federation)
  • More customization options around importing different sources, merging strategies
  • More informative error messages

Do you have an idea or a wish for graphql-import? Join the roadmap discussion!


Get involved and share your ideas

But before executing, we want to hear from you! These libraries have been built to address your pain points. This is a great opportunity to get involved and help shape the future of the GraphQL ecosystem.

We've opened roadmap issues on each of those libraries and want to hear your thoughts, wishes, complaints or anything at all that sits on your chest.

Join the roadmap discussions and share your ideas: graphql-cli, graphql-import, graphql-binding, graphql-config

We want to thank Prisma for creating those amazing libraries, leading the community and supporting it with such an egoless and selfless act. I'm sure this is just a start and there would be more great collaborations to come!


A note from the Prisma team: As of today, we're also officially deprecating graphlgen project in favor of The Guild's GraphQL Code Generator.