rchain / bounties

RChain Bounty Program
MIT License
90 stars 62 forks source link

GraphQL Self sovereign front end for RChain #609

Open jimscarver opened 6 years ago

jimscarver commented 6 years ago

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

David405 commented 6 years ago

@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!

jimscarver commented 6 years ago

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

dckc commented 6 years ago

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

jimscarver commented 6 years ago

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.

dckc commented 6 years ago

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

jimscarver commented 6 years ago

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

dckc commented 6 years ago

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

barneycinnamon commented 6 years ago

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 commented 6 years ago

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

aviationhacker commented 6 years ago

@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! :)

jimscarver commented 6 years ago

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

barneycinnamon commented 6 years ago

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

barneycinnamon commented 6 years ago

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

entropee commented 6 years ago

@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 commented 6 years ago

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

ibesoft11 commented 6 years ago

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.

dckc commented 6 years ago

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.

ibesoft11 commented 6 years ago

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

dckc commented 6 years ago

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
  },
  "36492204+ibesoft11@users.noreply.github.com": {
    "name": "ibesoft11",
    "hours": 5,
    "commits": 6
  },
  "ibesoft11@gmail.com": {
    "name": "Ibesoft11",
    "hours": 12,
    "commits": 29
  },
  "total": {
    "hours": 17,
    "commits": 36
  }
}
jimscarver commented 6 years ago

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

ibesoft11 commented 6 years ago

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

dckc commented 6 years ago

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.

ibesoft11 commented 6 years ago

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.

dckc commented 6 years ago

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

jimscarver commented 5 years ago

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.

dckc commented 5 years ago

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.

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