mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
gm β˜€ I'm off from work today and want to try something new. I'm going to build a new web3 project from 9-5 today and we'll see how far I can take it. This will be a learning experience for you and me: What would it be like if I was doing this full time? Follow along! πŸ‘‡
1 reply
4 recasts
10 reactions

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
I'll be posting updates threaded here Since it's St. Patrick's Day, the theme will be cloversπŸ€ Technically shamrocks make more sense but a google search reveals that shamrocks always have three leaves while clovers can have more, so that's more fun! Firing up the IDE now...
2 replies
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
I am using the project I'm working on for /chonksxyz (going live after the marketplace launch!) as a starting point since it'll be faster than starting from scratch. I've got everything copied over to a new "clovers" directory and yarn is installing dependencies. Let's go! πŸš€
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
I'm using Cursor for this little experiment. Thank goodness for AI code assist because I'll be able to move a lot faster than I otherwise would. On this tight, self-imposed deadline, that'll be key. Gah, it's already 9:30 πŸ™ƒ
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
I'm using @openzeppelin 4 instead of 5 because Ownable doesn't require constructor args in 4. When you verify a contract on Etherscan you need to provide a serialized version of your constructor args and I got bit trying to generate that one time... Almost couldn't verify!
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
So here's how the deployment will work: - Deploy each of the contracts - Get their addys - Point the storage contract at the minter and renderer - Point minter at storage so it knows where to call mint() - Point renderer at storage so it knows where to get token details from
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
Once we get to implementing the renderer this thread will be a lot prettier to look at for the non-techy followers, but we have to get minting working first. In the meantime, here's a picture of a clover field:
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
The plan is to let people mint clover NFTs for super cheap, maybe 10 for a penny, and there will be realistic-ish odds of finding a four-leaf clover among them. Looks like ETH is $1900 so we'll use that as our baseline. One clover will cost 0.00000053. Free!
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
This is the minter contract so far, and it might be about all we need. I can: - Update the mint price - Start and stop minting - Withdraw accumulated ETH You can: - Mint clovers at a rate of 10 for a pennyπŸ’š
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
Working on the renderer, the JS developer in me can't find the error on this line πŸ˜…
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
I ran into a snag but worked around it. I was using ERC721A (from the Azuki team) because it is good at minting batches of NFTs cheaply. The tradeoff is that looking up which batch a token is in gets more expensive the larger the batches become...
1 reply
0 recast
1 reaction

mike@sylphdapps.eth πŸŒŽπŸ’» pfp
[email protected] πŸŒŽπŸ’»
@mikesylphdapps
I was using the same technique EC721A uses to associate a seed with each clover (to determine number of leaves), but when minting huge amounts (since they're so cheap) the batches get so big that the renderer errored out trying to find the seeds.
1 reply
0 recast
1 reaction