OrchidProtocol / nanopay-demo

GNU Affero General Public License v3.0
1 stars 0 forks source link

[BOUNTY] Create a web app demonstrating Orchid's nanopayment technology #1

Open danopato opened 2 years ago

danopato commented 2 years ago

Challenge Description

Build a web application/website which uses Orchid's Layer 2 "nanopayments" to send probabilistic payments back and forth between two Orchid accounts. Probablistic nanopayments are a layer 2 Ethereum scaling solution somewhere between "one-to-many payment channels" and "probablistic roll-ups". The core smart contract that governs the layer 2 is lottery1.sol and is deployed on 9 EVM compatible blockchains.

There is an example "game" written in Python that allows two players to pick the size and win rate of their probabilistic payments and then generate "lottery tickets" which another player can then attempt to claim. The game currently uses Orchid accounts on the Gnosis blockchain. The simple way to win this bounty will be to turn that game into an interactive web based GUI. The existing example game and code is here (thanks danopato!).

How the web app should function

  1. The example code will need to be adapted to accept an Orchid L2 private key for signing valid lottery tickets as opposed to using the player name to derive a private key.
  2. A new Orchid L2 key can be created in the Orchid VPN app and exported. The key will need to be funded using the Orchid dapp.
  3. After a key is selected, the deposit and balance amounts will need to be found and displayed.
  4. The player then can select a payment size and win rate.
  5. Using the "pay" command, the user can generate a ticket.
  6. Using "claim" a user can check a ticket to see if it is a winner and then call the claim function on the smart contract to put the funds into their Orchid account.

Apply to work on this bounty via gitcoin with a description of how you are going to build this web app. A moderator will respond with an approval of your idea in the comments. Once you have completed your work, you will get $800.

Submission Requirements

Orchid Links

gitcoinbot commented 2 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work has been started.

These users each claimed they can complete the work by 2 weeks, 2 days from now. Please review their action plans below:

1) charlie85270 has applied to start work _(Funders only: approve worker | reject worker)_.

Hello I am a Javascript developer for 8 years and ReactJS expert. I have worked on several bounty and grants for several blockchain with success (Conflux, Celo, Human protocol, ...) Here is my github : https://github.com/Charlie85270 I also participated to the GR14 hackathon with Covalent where I finished second (developed a dashboard dApp). I will be happy to realize the mini game quickly and respecting the specifications. I'm also reachable on discord to exchange and keep you informed of the progress: charlie85270#4066 2) mpoulhazan has been approved to start work.

10 years developer Fullstack, Javascript/TS and Java in France and Canada. I work since 2 years for blockchains projects.

I am the developer of Sign in With Conflux, today used by Conflux community https://medium.com/conflux-network/sign-in-with-conflux-f394d9c0d099

I have also worked for Covalent https://web3dash.web.app/

And a lot of side project as https://apod-sky.firebaseapp.com/

My Github https://github.com/MPoulhazan

Serious and available, I am ready to start work now

WORK PLAN :

Hello, Since the example code is in python, I would use python for the web application as well. Using flask for the server and flask ui for the frontend, we should have basic web app that can fulfill all the requirements on this. The app will be tested by creating 2 wallets on the testnet and using 2 separate browsers to login to the app running on localhost to test the lottery.

Let me know if you are looking for some other details.

Learn more on the Gitcoin Issue Details page.