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

Closed
wants to merge 80 commits into from
Closed

GraphQL support #5014

wants to merge 80 commits into from

Conversation

flovilmart
Copy link
Contributor

@flovilmart 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
@codecov
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 Compare September 1, 2018 19:02
@flovilmart flovilmart force-pushed the graphql branch 2 times, most recently from 8c2b45e to 142a070 Compare September 8, 2018 18:23
@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
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
Copy link
Contributor Author

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
Copy link
Member

dplewis commented Dec 14, 2018

Oh I see

@flovilmart
Copy link
Contributor Author

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

@Moumouls
Copy link
Member

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

@flovilmart
Copy link
Contributor Author

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
Copy link
Member

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
Copy link
Contributor Author

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
Copy link
Member

@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
Copy link
Contributor Author

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).

@stale
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
Copy link
Contributor Author

@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
Copy link
Contributor 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

@flovilmart flovilmart closed this Mar 31, 2019
@flovilmart
Copy link
Contributor Author

flovilmart commented Mar 31, 2019

Closing due to lack of activity

@jcguarinpenaranda
Copy link
Contributor

Oh no :( this feature would have been very good to have in parse-server :/ :/

@flovilmart
Copy link
Contributor Author

Would have for sure, and would have obliterated the need for client SDK’s once and for all. The code is still available on the branch for anyone to pick up and continue

Sent with GitHawk

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 this pull request may close these issues.

4 participants