Closed kamescg closed 1 year ago
Feel likes the perfect bounty ! I've been part of the PoolTogether for a year and a half, building tools and adding features to the current PoolTogether ecosystem. Also I was able to try TurboETH for a "PoolTogether Dashboard". This bounty will help me to dig more in TurboETH as well as providing components for futur projects
I think it's a perfect fit too @MAlvarez-0. Thanks for hopping the Discord and sharing some of your background.
Consider the bounty yours π€
π¨βπ» User Story
As a Web3 protocol developer I want to easily integrate decentralized finance primitives into my application.
More specifically I want to utilize PoolTogether the prize savings network. Giving users the ability to easily deposit into a web3 savings network and automatically win prizes.
π Disclaimer
To be eligible for the payout you must first get approval to work on the bounty.
general
channelbounty
channelIt's recommended to share a link to your personal Github account when introducing yourself.
𧱠Project
Integrate the PoolTogether V4 protocol into the TurboETH.
The integration should include the ability to deposit and withdraw from the PoolTogether prize savings network on Ethereum, Optimism and Polygon.
Example of PrizePool and Ticket smart contracts deployed on Optimism:
PoolTogether users interact with the
YieldSourcePrizePool
smart contract. Mainly calling thedepositTo
,depositToAndDelegate
andwithdraw
functions.The
Ticket
contract is the ERC20 token that "holds" the chance to win prizes. AptUSDC
token is minted 1-to-1 whenUSDC
is deposited into theYieldSourcePrizePool
smart contract.Required Functionality:
Developer Tasks:
yield-source-prize-pool-abi.json
andyield-source-prize-pool-bytecode.json
ticket-abi.json
andticket-bytecode.json
wagmi.config.js
- Configure to use essential smart contract artifactsform-yield-source-prize-pool-deposit.tsx
form-yield-source-prize-pool-withdraw.tsx
prize-pool-contract-list.ts
The Contract List should include the USDC prizes pool and ticket addresses.
https://dev.pooltogether.com/protocol/deployments/mainnet/
Template - PrizePool Contract Address List
Template - Ticket Contract Address List
The contract lists can be passed into a hook like the one below to easily update the
deposit
andwithdraw
components with the right smart contract addresses.Potential File Structure
Integration
The PoolTogether integration should be added to the
integrations/pooltogether-v4
folder.Application
The application pages should be added to the
app/pooltogether-v4
folder.π° Bounty Reward
The bounty reward is 250 tokens and TurboETH DevPass digital collectible.
TurboETH is the recipient of 18,271.88 OP Tokens from Optimism Retroactive Public Goods Funding. The OP tokens earned from the PGF program are the primary funding source for TurboETH bounties.
Notice
The final integration may not resemble the proposed integration - that's O.K - a natural part of software development.
During development you might discover an original hypothesis doesn't make sense. No problem. Make a comment and clearly explain why a new approach is better than old one. Get rewarded for thinking out of the box.
The final bounty reward can be increased to match new bounty tasks.
Resources