gitcoinco / web

Grow Open Source
https://gitcoin.co
Other
1.78k stars 773 forks source link

Code Faucet Page #184

Closed owocki closed 6 years ago

owocki commented 6 years ago

Spec

Very often, I get people who want to claim an issue on Gitcoin but can't because they don't have ETH. Either there are no exchanges in their area, or they dont have the mone yto spend on gas.

Pursuant to making ethereum and Gitcoin accessible to everyone as broadly as possible, I would like to design a page entitled 'faucet' in which a user can go to the page and submit an application to receive a small amount of ETH.

Functional spec:

New database model proposal

FaucetApplication -pk

References

https://github.com/gitcoinco/web/issues/173#issuecomment-354347567 frontend design for this page: https://github.com/gitcoinco/web/issues/184

Bounty

Please only claim this bounty if you can turn it around in the next 3 days.

owocki commented 6 years ago

note: you may wish to rely on the github integration coded here https://github.com/gitcoinco/web/pull/156

gitcoinbot commented 6 years ago

This issue now has a funding of 0.13 ETH (89.98 USD) attached to it.

gitcoinbot commented 6 years ago

The funding of 0.13 ETH (89.98 USD) attached has been claimed by @usulix.

@usulix, please leave a comment to let the funder (@owocki) and the other parties involved your implementation plan. If you don't leave a comment, the funder may expire your claim at their discretion.

usulix commented 6 years ago

@owocki

Thanks G

owocki commented 6 years ago

but maybe that should check for almost 0 instead

yes pls

plain text ok? yes

should the admin form be a list with the ability to filter for fulfilled, unfulfilled, or all and a button to fulfill unfulfilled ?...

you can use the default django admin view for the list.. copying some of the patteresn from tdi/admin.py#WhitepaperAccessRequest might be good too

usulix commented 6 years ago

@owocki sounds great. will do. re: "I have the new route and page added - currently adding it to dashboard... but I could see how it might be better suited to retail... lmk, please, if you want it there instead" I am finding myself in need of slightly different errors for

{% include 'shared/no_metamask_error.html' %}
{% include 'shared/zero_balance_error.html' %}
{% include 'shared/unlock_metamask.html' %}

ie. for that error... "Thank you for your interest in receiving a faucet distribution, but you have more ether currently in your wallet than the distribution."

So, unless it is a problem, I am creating a new (ZF1 I would call it a module.. not sure about Django name for it) section under app with dashboard, marketing, retail.. etc called faucet... that way the views and models can be modular and contained there [while staying as DRY as possible, of course].. sound ok ?

owocki commented 6 years ago

yes that sounds right. you shouldnt need any of the shared/ partials for this view

usulix commented 6 years ago

@owocki - I see comments in the model... should that be an optional field on the form for users to put in something like "I am going to claim issue #184" ?... or is it for admin notes at some point ?

owocki commented 6 years ago

It’s for the former

On Fri, Dec 29, 2017 at 5:03 PM usulix notifications@github.com wrote:

@owocki https://github.com/owocki - I see comments in the model... should that be an optional field on the form for users to put in something like "I am going to claim issue #184 https://github.com/gitcoinco/web/issues/184" ?... or is it for admin notes at some point ?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/gitcoinco/web/issues/184#issuecomment-354514672, or mute the thread https://github.com/notifications/unsubscribe-auth/AAfXiaTs4v8Im20tguytuVXVFpCwilqnks5tFX25gaJpZM4ROpbt .

--

@owocki http://www.twitter.com/owocki


check out what i'm building on github http://github.com/owocki

or what i'm shooting on photoshelter http://photography.owocki.com/

or find me on twitter http://www.twitter.com/owocki, facebook http://www.facebook.com/kevinowocki, instagram http://instagram.com/owocki, linkedin http://www.linkedin.com/in/owocki, and owocki.com http://www.owocki.com/?utm_source=emailsig.

see you around teh internets!

PS -- Come to the next Boulder Blockchain https://www.meetup.com/Boulder-Blockchain/ meetup. Be there or be ^ 2. PPS -- Have I mentioned that *G*itcoin is live? More @ https://gitcoin.co

usulix commented 6 years ago

@owocki , Hi and Happy New Year. I wanted to give you an update on this. I have everything done except funding the request from the admin panel. I just realized that the contrib.admin uses much more of a request->page->request->page method than something that will allow easier interactions with w3.

I will need to take a look at the client side setup and add that to the template in admin. I have obligations Tuesday but should be able to finish Wednesday.

Regards, G

owocki commented 6 years ago

thanks for the update..

request->page->request->page

i wonder if we could get around this with some simple javascript.. just something simple that submits the tx to web3 and submits the HTML form after it has.

vs77bb commented 6 years ago

Howdy @usulix, I joined @owocki at Gitcoin and am checking in here... how goes it?

owocki commented 6 years ago

i think i need to review @usulix 's PR :)

vs77bb commented 6 years ago

@owocki Did you get to this? An exciting feature worth a small content piece, whenever ready - IMHO :)

owocki commented 6 years ago

yes i am waiting on @usulix to turnaround my comments on the PR

owocki commented 6 years ago

per @usulix message on slack.. he is super busy at work and needs some help getting this across the finish line.. i need to confirm with him, but i think yall should split the ETH. anyone want? @ethikz @thelostone-mc ?

ethikz commented 6 years ago

I've added his repo as a remote and cloned it. Just trying to catch up on what's going. If @thelostone-mc gets to it before me then awesome, if not I'll let you know once I go through everything.

usulix commented 6 years ago

@ethikz thanks. and any questions, I can probably field a couple. as far as I recall... it is basically just in need of

  1. change out the page markup for the ones provided on the other ticket https://github.com/gitcoinco/web/issues/173#issuecomment-354969169
  2. run the github user check through github login instead (and maybe create a user profile in gitcoin)
  3. tack on an email to the requester when admin funds the faucet request
thelostone-mc commented 6 years ago

@ethikz this one is yours! I'm helping out with the redeem/coin page and catching up on reading up solidity + crypto-economics! Ping me if you hit a roadblock, I'll help out. I can put some time aside to help out ^_^

ethikz commented 6 years ago

@usulix awesome! thanks for letting me know and saving me some more reading time lol. Hopefully, I won't have too many if any questions but I'll be sure to reach out if I do!

@thelostone-mc haha ok. I'll spend some time on it this weekend but will be traveling to multiple destinations for a bit so won't be able to really work on anything then.

ethikz commented 6 years ago

@usulix so the page /faucet needs to match the mockups at https://github.com/gitcoinco/web/issues/173#issuecomment-354969169

Am I understanding that correctly?

usulix commented 6 years ago

Yes, there are comps at https://github.com/gitcoinco/web/files/1599926/Gitcoin_Faucet.2.zip attached to that ticket

ethikz commented 6 years ago

The comps are different than the pages so I wanted to make sure before I started making all the UI changes lol.

Thanks!

usulix commented 6 years ago

It worked for me last time I ran it... No errors or oddities. I will check again this weekend and let you know if I get different results.

Sent from my iPhone

On Jan 31, 2018, at 7:44 AM, Josh Christensen notifications@github.com wrote:

@usulix Did you run into an issue when running docker?

print request.POST.get('destinationAccount') web_1 | ^ web_1 | SyntaxError: invalid syntax I fixed that by adding () around it but now there is another error

File "/code/app/faucet/views.py", line 10, in web_1 | from models import FaucetRequest web_1 | ModuleNotFoundError: No module named 'models'

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

ethikz commented 6 years ago

@usulix Are you on Gitcoin slack?

usulix commented 6 years ago

Occasionally...

Sent from my iPhone

On Feb 1, 2018, at 3:21 AM, Josh Christensen notifications@github.com wrote:

@usulix Are you on Gitcoin slack?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

ethikz commented 6 years ago

Oh ok, didn't find your username. So for sake of going back and forth can you just message me when you get on.

owocki commented 6 years ago

@vs77bb this might be a good one to promote via twitter to get folks to jump on it

@ethikz you still want it?

vs77bb commented 6 years ago

Done - https://twitter.com/GetGitcoin/status/963456837524828160

owocki commented 6 years ago

i moved this over to a new place => https://github.com/gitcoinco/web/pull/407/

once that scope is completed, i will pay out both bounties