No funded issue found.
Check out the Issue Explorer
Be the OSS Funding you wish to see in the world.
Looking to fund some work? You can submit a new Funded Issue here .
Time left
Opened
Issue Type
Workers Auto Approve
Project Type
Time Commitment
Experience Level
Permissions
Accepted
Reserved For
Burner Wallet Integration R&D
wearekickback
JavaScript
# Challenge: Burner Wallet Integration R&D
## Bounty
Up to 500 DAI. Many submissions, multiple winners.
- Winner : 300 DAI
- Runner up: 200 DAI
[NOTE] If the winning submission turned out to be feasible, we may commission further work to productionize it.
## Background.
Kickback is a popular choice to manage free events. User commit Eth/DAI to attend events. If they don't their commitment gets distributed to the one who attended.
Burner wallet is a popular choice to bring "Token economy" to events. User receives xDAI in their mobile browser and can claim drinks and swags at event without waiting for long confirmation time or needing ETH to pay gas price.
These two are the perfect combo for any events and there will be a great synergy if they can seemlessly integrate but here are the problems.
## The current workflow.
If you want to use Kickback and Burner wallet as is, here is the flow.
- 1 User RSVP on Kickback (Mainnet) with DAI.
- 2 User comes to the event.
- 3 Event organisers check people in using our web admin page.
- 4 Event organisers give paper wallet (with private key) loaded with some xDAI
- 5 User load the xDai into Burner wallet.
- 6 User buy drinks at food vendors using Burner wallet
- 7 At the end of the event, the Event organiser finalise the total turn up at Kickback.
- 8 User withdraw DAI from Kickback.
## The challenge
Simplify step 4&5 by somehow linking Kickback wallet address and Burner wallet address.
Here are some ideas Kickback and Burner team have brainstormed in the past but you can be creative to have your own solution.
### Idea 1: Generate Burner address derived from existing wallet address
Burner wallet has a way to generate contract based wallet using [contract wallet plugin](https://github.com/burner-wallet/burner-factory-plugins/blob/master/plugins/contract-wallet-signer/src/ContractWalletSigner.ts#L240) so it can generate new burner wallet address which is unique to the signer.
The advantage is that there is no need to store the information which links burner and kickback wallet addreses. The downside is that something like Metamask chrome plugin does not work on mobile browser hence we have to restrict the usage of Metamask plugin.
### Idea 2: Scan QR code
User has Kickback page open on his laptop, click "Scan QR code" will display a QR code, then user scan the code using his/her mobile phone which opens up burner wallet page preloaded with some xDAI. We couldn't figure out how wwe can preload xDAI with the link, so not sure if this is feasible.
### Idea 3: Signed message
Utilize signed messages and contracts to let them attach their burner account to a contract that's already linked to their kickback account.
### Idea 4: Use injected wallet as a signer.
[Idea from Tom](https://github.com/wearekickback/app/issues/266#issuecomment-578749174)
Currently, burner modules have `InjectedSigner`.
As long as we discourage users not to use desktop Metamask plugin but use others (eg: Opera mobile, Metamask mobile, Status, Trust Wallet, etc), then it can use the same address.
If this is the case, please also investigate if this can work not only injected wallet but with any other wallets such as Torus, Authereum, Wallet Connect, etc as [we are planning to integrate with onboard.js](https://github.com/wearekickback/app/issues/234)
## Submission Requirement
- URL of the Working prototype (recommended to fork Kickback frontend and build on top of it. You can use https://surge.sh/ to deploy on your own).
- Video walkthrough explaining the entire flow.
- Documentation detailing the user flow and pros/cons of your solution.
## Judging criteria.
- Wallet Inclusive (if it can work against any wallets, the better).
- The entire flow requires less manual work for both organizers and users.
- If we receive multiple submissions that implements similar ideas, then the more polished submission with the least extra work to make it production-ready will be chosen.
## References
- [How to setup Kickback frontend](https://github.com/wearekickback/app/#setup)
- [Burner Wallet 2](https://github.com/burner-wallet/burner-wallet-2)
- [Burner Wallet doc](https://burner-wallet.readthedocs.io/en/latest/)
- [What are Burner Wallet Plugins?](https://medium.com/@dmihal/what-are-burner-wallet-plugins-5c497e4bd279)
- [Build your own customized Burner Wallet (without the Burner Factory)](https://medium.com/@dmihal/build-your-own-customized-burner-wallet-without-the-burner-factory-dfbe598cdada)
Setup your profile
Tell us a little about you:
Skills
No results found for [[search]] .
Type to search skills..
Bio Required
[[totalcharacter]] / 240
Are you currently looking for work?
[[ option.string ]]
Next
Setup your profile
Our tools are based on the principles of earn (💰), learn (📖), and meet (💬).
Select the ones you are interested in. You can change it later in your settings.
I'm also an organization manager looking for a great community.
Back
Next
Save
Enable your organization profile
Gitcoin products can help grow community around your brand. Create your tribe, events, and incentivize your community with bounties. Announce new and upcoming events using townsquare. Find top-quality hackers and fund them to work with you on a grant.
These are the organizations you own. If you don't see your organization here please be sure that information is public on your GitHub profile. Gitcoin will sync this information for you.
Select the products you are interested in:
Out of the box you will receive Tribes Lite for your organization. Please provide us with a contact email:
Email
Back
Save