bounties icon indicating copy to clipboard operation
bounties copied to clipboard

GraphQL Self sovereign front end for RChain

Open jimscarver opened this issue 6 years ago • 26 comments

Describe how the building and implementation of this task will benefit the RChain Membership or the RChain blockchain:

We need front ends for rchain applications. Standardizing tech stacks can facilitate cooperative development and greater interoperability among our projects. Standardizing the front end can simplify the migration to rchain from other back ends when RChain is ready. GraphQL queries and mutations map simply to RChain and Rspace making it especially ideal for RChain front ends. A self sovereign tech stack is a prerequisite to self sovereign identity.

Working document cooperating with dilife, holochain, etc, having similar requirements.

Estimated Budget of Task: $5000 per month
Estimated Timeline Required to Complete the Task: 150 hours
Measure of Completion: users successful in employing stack

jimscarver avatar Apr 19 '18 21:04 jimscarver

@jimscarver is there yet a repository on github used to keep track of this work.

I haven't been following up for a while and would love update myself.

PS: I am up-to-date with other documents but viewing existing codes(if any) would be perfect!

David405 avatar Apr 20 '18 19:04 David405

@David405 It is in the document https://github.com/DigitalLifeCollective/basecamp is the first.

jimscarver avatar Apr 20 '18 19:04 jimscarver

I suggest help wanted is a distraction in this repository... it more or less belongs on every issue.

dckc avatar May 07 '18 22:05 dckc

I see I added help-wanted label after dan removed it. I believe the help-wanted category is important and some labels are categories not guided. I definitely want to flag help wanted on this issue. The github interface suggests this label. Finding nothing people may go away.

jimscarver avatar May 21 '18 20:05 jimscarver

I trust you'll curate a critical mass of the the rest of the issues, then, and add help-wanted as appropriate, @jimscarver .

dckc avatar May 21 '18 22:05 dckc

We are seeing an emergence of an rchain ready self sovereign user determined interface in the noob work studies. With a little help from your friends, you can use your own variation of https://rhobot.glitch.me easily. We learned about glitch, github, GraphQL, javascript and handlebars templates. Yesterday's video https://youtu.be/yN4_m7GEeN8

jimscarver avatar May 29 '18 12:05 jimscarver

Umm... in what way is glitch.me "self sovereign"? It's a hosted service. They can take it down altogether without your consent, no?

dckc avatar Jun 01 '18 13:06 dckc

I voted a budget for this issue for May, but I am not sure how to vote rewards, because I wasn't involved in the issue and don't know who did what. Any feedback from participants would be helpful.

barneycinnamon avatar Jun 01 '18 16:06 barneycinnamon

@entropee Did you work on this, or did you vote a reward for yourself to reward yourself for voting rewards on the issue? No judgment; just trying to figure out who did what, and 5% is a reward % that seems to carry a particular meaning around here. I don't vote for rewards for voting. If you worked on the issue in May, please see below.

@aviationhacker What $ amount of work did you do this month in your opinion, based on value of output, time spent multiplied by a dollars-per-time-unit rate, or other method? Please confirm $ amount and method, and your reward vote is on its way.

barneycinnamon avatar Jun 01 '18 16:06 barneycinnamon

@barneycinnamon I estimate I did about $225 worth of work (15 hours at $15, as i'm still quite new so I think this is an appropriate rate for my level of work). I can also confirm that entropee did work on the project with me, and would value his work at more than 5%, as he put in more time than $54 worth and is more experienced than myself. Thank you for keeping tabs on the issue and voting though! :)

aviationhacker avatar Jun 02 '18 03:06 aviationhacker

@barneycinnamon We get a better collective intelligence if we vote with our gut rather agreement on rewards. I consider time spent is rewarded as is exemplary contribution. You might follow my votes or better yet, your own heart. You might tweak my rewards to better reflect what you feel is fare. We do not want to fall into the trap of making a formula that restricts valuation of effort to a few measurable variables. I think it is important to apply our own jugements where we can to get the wisdom of the crowd.

jimscarver avatar Jun 04 '18 15:06 jimscarver

Thank you, @aviationhacker and @jimscarver for your thoughts. I felt comfortable entering a couple reward votes for May.

barneycinnamon avatar Jun 04 '18 16:06 barneycinnamon

@entropee, would you be comfortable voting rewards for anybody who worked with you on this issue in May? You voted a reward for yourself for this issue, and you have reached three votes, but you did not vote for anybody else. I hope you will vote some amount of reward for compatriots who you feel deserve it.

barneycinnamon avatar Jun 04 '18 16:06 barneycinnamon

@barneycinnamon, Yes, of course. These are my first times to use the trust system. I appreciate nudges like this. :smile: It never even occurred to me that the others needed votes. I'm on it, now.

entropee avatar Jun 04 '18 16:06 entropee

@jimscarver, I just tried to access issues 758, 759 and 760 in Rhobot and I get Permission Denied in the rewards window. The log also shows Error: Can't set headers after they are sent. The last error seems intermittent but the Permission Denied is consistent when you click the vote key next to the issue number.

entropee avatar Jun 06 '18 21:06 entropee

Hey guys, this is the link to the github repository for the Graphql server https://github.com/ibesoft11/graphql It's still under development and has been reviewed by Jimscarver and others on the collab.

ibesoft11 avatar Aug 03 '18 20:08 ibesoft11

Good start, @ibesoft11 . I did a quick look at the source code and raised a handful of issues.

I'd like to see some Quickstart info in the README.

dckc avatar Aug 03 '18 21:08 dckc

Thanks for the pointers @dckc, I'll resolve them accordingly.

ibesoft11 avatar Aug 04 '18 10:08 ibesoft11

Based on some quick data collection (details below), I'm voting $1000 for progress on https://github.com/ibesoft11/graphql in July.

rdbr-gql$ docker run --rm -v $(pwd):/code khor/git-hours
...
Digest: sha256:0032fe274e6f75246b8877dc2a6621f4c9ad9f39dd3282512dfb6123d8677b0e
Status: Downloaded newer image for khor/git-hours:latest
{
  "none": {
    "name": "Glitch (rchain-bounty-graphql)",
    "hours": 0,
    "commits": 1
  },
  "[email protected]": {
    "name": "ibesoft11",
    "hours": 5,
    "commits": 6
  },
  "[email protected]": {
    "name": "Ibesoft11",
    "hours": 12,
    "commits": 29
  },
  "total": {
    "hours": 17,
    "commits": 36
  }
}

dckc avatar Aug 04 '18 18:08 dckc

@dckc the code was not developed originally on github. Getting it on github was done after the fact. Total efforts is estimated to be over 70 hours.

jimscarver avatar Aug 04 '18 21:08 jimscarver

@dckc most of the work was not done originally on github as mentioned earlier by @jimscarver

ibesoft11 avatar Aug 04 '18 22:08 ibesoft11

I'm voting based on the value I see, not the hours someone might have spent.

I collected data on hours spent on the assumption that (a) we want this service developed, and (b) if we had to hire somebody to write what was done so far, what would it cost?

The service is not, as far as I know, deployed nor integrated with any friendly front-end UI. So thus far, not much value has been delivered yet. I'm inclined to reserve most of the budget for the stated objective: users successful in employing stack.

If by looking at the code I'm missing some of the value that was delivered, do let me know.

dckc avatar Aug 05 '18 01:08 dckc

For the month of August, We were able to fix issues on the nginx server, added support for views from the MySql database on rhobot.net, On-board collab members on how to use the Graphql interface. We also came up with a structure of the Community Resource Graphql Server; which will act as a central interface to our pool of resources... I suggest a budget of $850 considering the efforts and OUTPUT. Link to Graphql server => https://graphql.rhobot.net Link to Github repo => https://github.com/ibesoft11/graphql

A breakdown of each person's contribution and reward can be found in the graphql channel on Discord.

ibesoft11 avatar Sep 04 '18 08:09 ibesoft11

I just ran across https://github.com/vjpr/objection-graphql , which seems like it might reduce / eliminate much of the grunt work.

dckc avatar Sep 11 '18 05:09 dckc

The budget sheet for september requests a budget of only $300. I believe the work done justifies the budget very reasonably @dckc @JoshOrndorff

There were some concerns about the value to rchain which I believe have been answered in the colab #graphql channel. Are there remaining concerns? We are aiming for better organization and documentation of the project in october.

jimscarver avatar Oct 07 '18 17:10 jimscarver

OK, I supported a voted of $300 for a few story points for Added search functionality, fixed bugs, and did code-walkthroughs for Colab members.

  • 2018-09-05 02:47 PM a65040d Perform searching via raw SQL queries.
  • 2018-09-05 02:46 PM 767d825 Added search ability to queries based on arguments

Supplementary documentation is fine, but all essential material belongs here. I chased it down this time, but please don't make me do it in the future. (A pointer to notes of the code walkthru would be handy, or at least a date so that I don't have an O(n) search of the logs).

Also, the stated objective here is users successful in employing stack. If you want to be rewarded for something else in the future, change the measure of completion.

In the future, I need to know more about how this connects to the RChain platform; another UI for the bounty system is nice, but I haven't figured out budget norms for bounties-about-bounties yet.

For reference, we're talking about < 50 lines of code, here:

rchain-dbr-graphql$ git diff --stat e2ccb8d6e715773b29185937ab53f00950ee5b41 HEAD
 db.js             |  2 +-
 schemaDefs.js     | 27 +++++++++++++--------------
 schemaResolver.js | 24 +++++++++++++++---------
 3 files changed, 29 insertions(+), 24 deletions(-)

dckc avatar Oct 08 '18 02:10 dckc