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 #5014

Open
wants to merge 80 commits into
base: master
from

Conversation

Projects
None yet
3 participants
@flovilmart
Copy link
Member

flovilmart commented Aug 30, 2018

  • Parse Schema as Queries
    • Query on:
      • Strings
      • Numbers
      • GeoPoints
      • Dates
      • Pointers
      • Relations
      • Array
  • Core classes as Queries (User, Roles, Installations)
  • Mutations for core classes AND custom classes
  • user authentication, login, logout, signup
  • cloud code functions as mutations
  • custom graphQL types for cloud functions
  • access ParseClasses graphQL types at runtime from cloud code
  • Command line friendly
  • graphiql
  • File upload
  • password reset
  • user email verification (not needed)
  • third party auth

@flovilmart flovilmart changed the title GraphQL support WIP: GraphQL support Aug 30, 2018

@flovilmart flovilmart force-pushed the graphql branch from c9a4a99 to 5de4075 Aug 30, 2018

@codecov

This comment has been minimized.

Copy link

codecov bot commented Aug 30, 2018

Codecov Report

Merging #5014 into master will increase coverage by 0.26%.
The diff coverage is 97.09%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #5014      +/-   ##
==========================================
+ Coverage   93.86%   94.13%   +0.26%     
==========================================
  Files         123      148      +25     
  Lines        8972     9567     +595     
==========================================
+ Hits         8422     9006     +584     
- Misses        550      561      +11
Impacted Files Coverage Δ
src/Controllers/index.js 96.55% <ø> (ø) ⬆️
src/Options/index.js 100% <ø> (ø) ⬆️
src/Controllers/HooksController.js 94.64% <ø> (ø) ⬆️
src/Options/Definitions.js 100% <ø> (ø) ⬆️
src/graphql/types/StringQuery.js 100% <100%> (ø)
src/Controllers/AdaptableController.js 95.65% <100%> (-0.19%) ⬇️
src/cloud-code/Parse.Cloud.js 97.61% <100%> (+0.39%) ⬆️
src/graphql/types/NumberInput.js 100% <100%> (ø)
src/graphql/types/SelectQuery.js 100% <100%> (ø)
src/graphql/types/BaseQuery.js 100% <100%> (ø)
... and 55 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3851641...8b0a11a. Read the comment docs.

@flovilmart flovilmart force-pushed the graphql branch 4 times, most recently from 0a5a203 to 87b4922 Aug 30, 2018

@flovilmart flovilmart force-pushed the graphql branch 2 times, most recently from 8c2b45e to 142a070 Sep 8, 2018

@stale

This comment has been minimized.

Copy link

stale bot commented Nov 2, 2018

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Nov 2, 2018

@stale stale bot closed this Nov 9, 2018

@flovilmart flovilmart reopened this Nov 10, 2018

@stale stale bot removed the wontfix label Nov 10, 2018

@dplewis

This comment has been minimized.

Copy link
Member

dplewis commented Dec 14, 2018

@flovilmart Can you update the readme? I would like to test this out. Also how would we go about using GraphQL with the SDK's?

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Dec 14, 2018

That’s the beauty, no need of a SDK. It’s fully compatible with relay :) use graphqli and enjoy :)

@flovilmart flovilmart changed the title WIP: GraphQL support GraphQL support Dec 14, 2018

@dplewis

This comment has been minimized.

Copy link
Member

dplewis commented Dec 14, 2018

Oh I see

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Dec 14, 2018

And as for what’s left, a logIn/ signup mutation with the auth data like Facebook, Twitter etc is just what’s missing

@Moumouls

This comment has been minimized.

Copy link
Contributor

Moumouls commented Jan 19, 2019

Really interesting, a quick question, on the Query part, has the GraphQL live mutation subscribe been integrated @flovilmart ?

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Jan 19, 2019

Not yet, I wanted to get the initial modeling out there, now it’s been a while. I believe subscription will be an interesting extension to it. Is it something you want to work on?

@Moumouls

This comment has been minimized.

Copy link
Contributor

Moumouls commented Jan 19, 2019

Really interesting, a quick question, on the Query part, has the GraphQL live mutation subscribe been integrated @flovilmart ?

UPDATE : the subscription system for live Mutation seems to exist on relay too.
I hadn't noticed, but it seems to be a particularity of the Apollo solution.

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Jan 19, 2019

https://graphql.org/blog/subscriptions-in-graphql-and-relay/

This describe subscriptions as part of the spec / language and not a particularity.

As we do it with live queries, we could support a simple query based subscription model.

@Moumouls

This comment has been minimized.

Copy link
Contributor

Moumouls commented Jan 19, 2019

@flovilmart I'm a new beginner in the world of graphQL, I need a little learning on it, then I dive into it.

On the documentation side too, we're going to have to write a graphQL doc no ?

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Jan 19, 2019

The good thing about graphQL is that it’s self documenting.

The pieces we need to document are around handling session tokens. I have a todo demo app based on relay which #justworks (I need to share it though).

@flovilmart flovilmart force-pushed the graphql branch from c4661a6 to 6d1658d Jan 19, 2019

@stale

This comment has been minimized.

Copy link

stale bot commented Mar 5, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Mar 5, 2019

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Mar 5, 2019

@dplewis @acinader not sure what you want to do with this feature. I unfortunately won't have time to address nits or changes in a decent time. This has been open for a while. Perhaps you should get the pulse if the community wants it or not.

@stale stale bot removed the wontfix label Mar 5, 2019

@flovilmart

This comment has been minimized.

Copy link
Member Author

flovilmart commented Mar 17, 2019

Here is the relay example forked for parse-server

https://github.com/parse-community/relay-examples

What is missing in the example is the login flow, acuireing a session token, which is not completely necessary but would be nice as an example to show. I'll let you guys play with it and improve it as it should

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.