yeet-haus / mvp

Half Hot Dog MVP
https://mvp-yeeter.vercel.app
MIT License
1 stars 2 forks source link

Add ERC-20 Support #69

Open TravisWyche opened 2 months ago

TravisWyche commented 2 months ago

"bigger because a new contract plus it touches everything in the app"

Requires a token approval before yeeting.

we are working with un-audited contracts - and this adds another. we might need to note that in the UI/faq/docs or something

DESIGN UPDATES

Launch form

Yeet details

Yeet form

TravisWyche commented 2 months ago

Here's my first pass.

Launch Form

Image

Yeet Details

Image

Yeet Form

Image

earth2travis commented 2 months ago

Instead of adding a form field for the user to paste the token address (feels like that would proliferate gross user error and vulnerabilities), I opted to add token icons. I figure we can ensure the proper token address in the link, and also clearly present the current selection. As we scale, perhaps this should become a drop down list with icon + token name, but in these early days I prefer these fewer clicks and onscreen info. Thots?

Having us provide the token address is complicated and kinda makes us the gatekeepers of what tokens can be used.

If it is easier for this version I understand but it is not ideal. We will have to manage different token addresses on different networks. And then we will be responsible for making updates to the code when support for new tokens is added.

It would be better to inform the user what they are signing up for. And then verify the address they added is the token they expected.

Changed the copy to read Yeet Amount to be more token agnostic.

There is nothing in this view informing the user what they are spending. It was on the previous view but would be a good idea to have it here so they know the type of tokens they are contributing/approving.

TravisWyche commented 2 months ago
skuhlmann commented 2 months ago

@TravisWyche We are prepared for any valid ERC20.

And it should be the same on all chains.

TravisWyche commented 2 months ago

Second pass:

Launch Form

ERC20 Enhancement_ Launch Yeeter - Second Pass

Yeet Form

ERC20 Enhancement_ Yeet Form - Second Pass

skuhlmann commented 2 months ago

@TravisWyche this works for me! Thanks.,

skuhlmann commented 2 months ago

spec notes

Contracts

Implement ERC20 Yeeter contract

Subgraph

Update for ERC20 Shaman

Dapp

General

Hooks

Utils

            address payable _token,
            uint256 _startTime,
            uint256 _endTime,
            bool _isShares,
            uint256 _minTribute,
            uint256 _multiplier,
            uint256 _goal,
            address[] memory _feeRecipients,
            uint256[] memory _feeAmounts

UI