Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GraphQL support should be a third party application. #619

Closed
tomchristie opened this issue Aug 27, 2019 · 9 comments · Fixed by #1198
Closed

GraphQL support should be a third party application. #619

tomchristie opened this issue Aug 27, 2019 · 9 comments · Fixed by #1198

Comments

@tomchristie
Copy link
Member

I'd like our graphql support to move out into being a third party package.

We should then document:

  • The third party package it's been moved to.
  • Links to ASGI implementations with ariadne, tartiflette, strawberry.

Questions:

  • Which of Ariadne, Tartiflette & Strawberry currently have provide an ASGI application, that Starlette can mount?
  • Are there any other GraphQL implementations I've missed here?
  • Anyone keen to take on the GraphQL implementation as a third party package?
@tomchristie
Copy link
Member Author

@dhirschfeld
Copy link

strawberry asgi app:

@euri10
Copy link
Member

euri10 commented Nov 24, 2020

strawberry asgi app:

​@​strawberry​.​field forever : 💗 !

@JayH5
Copy link
Member

JayH5 commented Feb 4, 2021

Just commenting to add some updated links to libraries that can provide GraphQL support to Starlette applications. These will be in the Starlette documentation as well:

@RoyTrudell
Copy link

strawberry asgi app:

​@​strawberry​.​field forever : 💗 !

Dead Link

@patrick91
Copy link

strawberry asgi app:

​@​strawberry​.​field forever : 💗 !

Dead Link

Updated link is here: https://strawberry.rocks/docs/integrations/asgi ☺️

@cglacet
Copy link

cglacet commented Feb 18, 2021

How easy would it be to replace the existing solution with any of the suggested alternatives? It looks like the current solution is quite strongly coupled to graphene, or am I wrong?

The idea would be to output the schema as plain text or json to a third party library?

I would gladly see even over-simplified example to appear in the documentation because its not clear to me how everything is interacting. For example I can see in strawberry's case that:

The GraphQL app accepts two options at the moment:

  • schema: mandatory, the schema created by strawberry.Schema.

Seems like a problem since most people using starlette probably used graphene to generate their schema. I'm personally "stuck" with graphene as I used graphene-sqlalchemy, but maybe I missed a better option to interface my SQLAlchemy models with GraphQL.

I found an example in Ariadne's documentation: Starlette integration where they use the string version of the schema (aka type_defs). There is a discussion about this here.

@Kludex
Copy link
Sponsor Member

Kludex commented Jun 11, 2021

This issue can be closed as soon as we document our decision of deprecating our GraphQL module.

@JayH5
Copy link
Member

JayH5 commented Jun 11, 2021

It has been documented, we just haven't done a release in a while so the docs haven't been updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants