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

Create GraphQL Endpoint To Query Data #67

Open
5 tasks
joeyjoejoejr opened this issue Oct 21, 2019 · 0 comments
Open
5 tasks

Create GraphQL Endpoint To Query Data #67

joeyjoejoejr opened this issue Oct 21, 2019 · 0 comments
Labels
enhancement New feature or request

Comments

@joeyjoejoejr
Copy link
Collaborator

After a conversation with @cwmanning about a potential dashboard implementation for an open source version of this app, we realized that the reports that would be useful are specific to teams and companies. Even within viget there seem to be a number of different ways that people would want to consume that information. The new strategy is to open up a graphql api, allowing users to build their own dashboard or reporting mechanisms.

Steps

  • Create a graphql endpoint
  • Secure the graphql endpoint
  • Expose a query for pull requests
  • Expose a query for reviews
  • Expose a query for users in the system

Discussion

This can be worked on independently of other feature, but securing the graphql endpoint might either need to wait for a system of creating/revoking api tokens.

There are two types of users in the system. There is a github user which is created when an unknown user either creates or reviews a pull-request. There is also a slack user, which is what people will use to log in and change setting/add repositories to cr bot.

Likely we will want to use Juniper:
https://github.com/graphql-rust/juniper

And use this as a reference for adding GraphQL to Actix
https://github.com/actix/examples/blob/master/juniper/src/main.rs

@joeyjoejoejr joeyjoejoejr added the enhancement New feature or request label Oct 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant